このブログのこれまでとこれから

ブログの URL を https://clown.cube-soft.jp/ に変更しました。近年、このブログは Cube シリーズに関する開発ブログの性質が強くなっていましたが、この度、URL を変更して正式に開発ブログと位置付ける事にしました。また、キューブ・ソフトに関わるリリ…

CubePDF シリーズと PDF のパスワード保護について

先日、CubePDF Utility 0.5.4β のリリースが完了しました(リリースノート)。0.5.0β で大幅な改修 を行った都合で一部の機能が移行しきれておらず、0.5.1β 以降は主にそれらの移行期間と位置付けていました。0.5.4β で後述する閲覧機能以外は一通り移行が完…

CubePDF Utility 0.5.4β

CubePDF Utility 0.5.4β をリリースしました。修正点は以下の通りです。 詳細を設定して抽出機能を追加 0.5.0β 以降、抽出機能に関しては「選択ページを抽出」のみに制限されていました。0.5.4β では、設定用画面を新たに設ける事により、抽出条件を柔軟に変…

変換された PDF の色がおかしくなる現象について

現在、主に PDF ファイルを CubePDF 経由で再度 PDF に変換した場合、下図のように変換された PDF のテキストの色が赤くなる等の現象が確認されています。 この現象は CubePDF 1.0.0 において発生し、1.0.1 でいくつかの改善を行いました。そのため、まずは …

CubePDF 正式版と仮想プリンター構築システム CubeVP の提供開始

本日、CubePDF 1.0.0 を 最初の正式版 としてリリースしました。この記事では、1.0.0 までの道のりの回顧と、同時リリースした有償によるカスタム仮想プリンター CubeVP の宣伝、もとい、狙いについて記載します。 CubePDF 1.0.0 のリリースまでの道のり Cub…

CubeVP および CubePDF SDK ユーザーマニュアル

CubeVP は、CubePDF でも利用されている、ユーザー独自の仮想プリンターを構築するためのソフトウェア群であり、下記のソフトウェアによって構成されています。 CubeVpMon 仮想プリンターを構築するためのシステムライブラリ CubeVPM: Cube VirtualPrinter M…

CubeVP チュートリアル

このドキュメントでは、CubeVP の使い方を学ぶ最初のステップとして、メイン画面の表示されない CubePDF を実行するための仮想プリンターを登録してみます。 このチュートリアルを実行する前に CubeVP の Web ページ より、 あらかじめ CubeVP のインストー…

CubeVP API

このドキュメントでは、CubeVP によって作成される仮想プリンターが、連携するユーザープログラムを実行する際の仕様 (API) について記載します。 「任意のアプリケーション(以下、アプリケーションと呼ぶ)」から印刷が実行されると、 仮想プリンターは、W…

CubeVPM: Cube VirtualPrinter Manager

Cube VirtualPrinter Manager (CubeVPM) は、仮想プリンターのインストール およびアンインストールを実行するための GUI アプリケーションです。 CubeVPM を使用するには .NET Framework 3.5 以降が必要です(4.5.2 以降を強く推奨)。 もし、ご利用の端末…

CubeVPC: Cube VirtualPrinter Console

Cube VirtualPrinter Console (CubeVPC) は、仮想プリンターのインストール およびアンインストールを実行するためのコマンドライン型アプリケーションです。 CubeVPC を使用するには .NET Framework 3.5 以降が必要です(4.5.2 以降を強く推奨)。 もし、ご…

CubePDF SDK の利用方法

サンプルプログラム 詳細 Facade SettingFolder 旧バージョンからの移行 Cube.Pdf.Converter は CubePDF で使用される PostScript から PDF 等への 変換処理を提供するライブラリで、.NET Framework 3.5 以降、および .NET Standard 2.0 以降で 利用可能な N…

Native ライブラリのコピー方法

Cube.Pdf は現在、 Ghostscript および PDFium と言う Native なライブラリに依存しています。 また、これらのライブラリを簡単に利用するために、非公式な NuGet パッケージとして 下記のものを公開しています。 Cube.Native.Ghostscript Cube.Native.Pdfiu…

Ghostscript ラッパーライブラリの利用方法

Cube.Pdf.Ghostscipt は Ghostscript を .NET Framework 上で利用するための ラッパーライブラリであり、.NET Framework 3.5 以降で利用可能な NuGet パッケージとして 公開されています。利用したいプロジェクトで下記の PackageReference を記述するか、 …

CubePDF Utility 0.5.3β

CubePDF Utility 0.5.3β をリリースしました。修正点は以下の 2 点です。 一部の環境で、関連付けられたアイコンの表示処理が原因でエラーとなる不都合を修正しました。 Ctrl クリックで複数の項目を選択できない不都合を修正しました。

CubeICE 0.9.1β

CubeICE 0.9.1β をリリースしました。0.9.1βでの修正点は下記の通りです。 未対応形式のファイルが指定された時のエラーメッセージを修正 CubeICE で未対応形式、または圧縮形式ではないファイルを指定した際のエラーメッセージを分かりやすい文言に修正しま…

Visual Studio 2019 と新 csproj への移行

2019 年 4 月 2 日、Visual Studio 2019 が正式版としてリリース (GA: General Available) されました。この記事では、 Visual Studio 2019 に関連する内容として、C# の新しいプロジェクト形式 (csproj) への移行について記載します。新 csproj 自体は Visu…

Azure Pipelines で OpenCover/NUnit を実行し Codecov に送信

CubeSoft の各種プロジェクトでは、継続的インテグレーション (CI: Continuous Integration) 用サービスとして AppVeyor を利用していますが、諸々の事情を考慮して Azure Pipelines でも同等の CI を実行できるように環境の整備を進めています。この記事で…

CubePDF 1.0.0RC19

CubePDF 1.0.0RC19 をリリースしました。1.0.0RC19 では、CubePDF プリンタ(仮想プリンタ)のインストール処理に関する改善が行われました。CubePDF では 1.0.0RC16 以降、CubePDF プリンタのインストール処理のさらなる安定化を目標の一つとして更新を続け…

Cube のプロジェクト構成およびビルド&テスト方法

現在、cube-soft@GitHub には CubePDF や CubeICE 等の実装コードを始めとして様々なリポジトリが存在します。この記事では、これらのリポジトリを修正する際の基本的な情報について記載します。 ディレクトリ構成 Git ブランチ構成 ビルド&テスト方法 ディ…

CubePDF 1.0.0RC18

CubePDF 1.0.0RC18 をリリースしました。修正点は下記の通りです。 文書プロパティを「設定を保存」機能の対象となるように拡張 CubePDF には「設定の保存」機能が存在しますが、この機能の対象はこれまで「一般」および「その他」タブに存在する項目に限ら…

2018 年の振り返り

GitHub Activity リポジトリおよびコードの整理 CI の徹底およびテストカバレッジの可視化 CubePDF シリーズの大改修 GitHub Activity 2018 年も残り僅かとなりました。この記事では、私の 1 年間の活動を振り返ります。まず、GitHub Activity に目を向ける…

CubePDF Utility 0.5.2β

CubePDF Utility 0.5.2β をリリースしました。修正点は以下の通りです。 32bit 版の CubePDF Utility で、パスワードで保護された PDF ファイルが開けない不都合を修正しました。 プレビュー画面の表示処理を改善しました。 高 DPI 設定時にサムネイルの表示…

CubePDF 1.0.0RC17

CubePDF 1.0.0RC17 をリリースしました。修正点は下記の 3 点です。 出力ファイル名の初期値が、特定の条件で文字化けする不都合を修正しました。 インストール時の挙動を改善しました。 Ghostscript 9.26 に更新しました。尚、9.26 ではセキュリティに関す…

CubePDF に含まれる Ghostscript を手動で更新する方法

先日、Ghostscript が 9.26 にバージョンアップしました。リリースノートによると Ghostscript 9.26 では再び、セキュリティ問題に関する修正が実施されているようです。CubePDF も、近日中に Ghostscript のバージョンアップを含めた最新版をリリースする予…

Ghostscript を C# から利用するためのライブラリ

先日、7-Zip ライブラリとしての CubeICE と言う記事を公開しましたが、ライブラリ化の試みは CubePDF シリーズでも行っています。CubePDF シリーズは Cube.Pdf と言うリポジトリで管理しており、ライブラリ部分は Libraries に、最終的なアプリケーション部…

CubePDF 1.0.0RC16

CubePDF 1.0.0RC16 をリリースしました。修正点は下記の通りです。 名前を付けて保存ダイアログの挙動を修正 CubePDF 1.0.0RC12 以降、出力ファイルに設定されているパスのフォルダ部分を「名前を付けて保存」ダイアログの初期表示フォルダとして指定してい…

ユニットテストで振り返るプログラマとしての自分史

ここ 1, 2 年、主に キューブ・ソフト で配布している Windows ソフトウェアを中心に、ユニットテスト周りの整備を精力的に行ってきました。今回は、テストと言う視点で、自らのプログラミングの軌跡を振り返るような記事を執筆してみようかと思います。 テ…

7-Zip ライブラリとしての CubeICE

圧縮・解凍ソフト CubeICE をゼロから改修 に記載した通り、昨年、CubeICE に対して大幅な修正を実施しましたが、この際にライブラリとしても利用できるようにインターフェース(クラスやメソッド)を整理する事をテーマの一つに設定していました。そこで、…

CubePDF Utility 0.5.1β

CubePDF Utility 0.5.1β をリリースしました。修正点は以下の通りです。 0.4.1β から 0.5.0β の変更時に移行できていなかった機能を再実装 CubePDF Utility 0.5.0β では起動速度等の向上のために大幅な修正を行いましたが、この都合で一部の機能が 0.4.1β か…

CubePDF 1.0.0RC15

CubePDF 1.0.0RC15 をリリースしました。CubePDF 1.0.0RC15 では Ghostscript 9.25 のバージョンアップに対応しています。Ghostscript 9.25 では、先日の脆弱性に関連する修正も含まれるようですので、CubePDF をお使いの方は、https://www.cube-soft.jp/cub…