全ドライバをGitHubで公開、パッケージマネージャに対応しました

Copper PDFの各言語向けドライバのソースコードをGitHubで公開しました。あわせて、各言語の標準的なパッケージマネージャからインストールできるようになりました。

https://github.com/zamasoftnet

対応状況

言語パッケージマネージャリポジトリ
JavaMaven / Gradle(JitPack経由)cti.java
.NET (C# / VB.NET)NuGetcti.net
Node.jsnpmcti.nodejs
PHPComposercti.php
Pythonpipcti.python
Perlcpanmcti.perl
RubyBundlercti.ruby

パッケージマネージャ対応の利点

これまでドライバの導入には、アーカイブをダウンロードして手動でライブラリをプロジェクトに配置する必要がありました。パッケージマネージャに対応したことで、以下のような利点があります。

  • 1行でインストールdotnet add package Zamasoft.CTIcomposer require zamasoft/cti-php のように、コマンド1つで導入できます。
  • 依存関係の自動管理 — プロジェクトの依存関係として明示的に管理され、チーム開発やCI/CD環境での再現性が向上します。
  • バージョン管理が容易 — バージョンの固定やアップデートがパッケージマネージャの仕組みで行えます。

インストール例

Java(Gradle)

repositories {
    maven { url 'https://jitpack.io' }
}
dependencies {
    implementation 'com.github.zamasoftnet:cti.java:v2.2.3'
}

.NET

dotnet add package Zamasoft.CTI

PHP

composer require zamasoft/cti-php

Python

pip install "git+https://github.com/zamasoftnet/cti.python.git#subdirectory=python3"

Node.js

npm install https://github.com/zamasoftnet/cti.nodejs.git

Perl

cpanm https://github.com/zamasoftnet/cti.perl/archive/refs/heads/main.tar.gz

Ruby(Gemfile)

gem 'copper-cti', git: 'https://github.com/zamasoftnet/cti.ruby.git'

GitHub公開の利点

ソースコードの公開により、ドライバの動作を確認したり、問題を報告したりすることが容易になりました。各リポジトリにはAPIドキュメント、サンプルコード、テストが含まれています。

APIドキュメントはGitHub Pagesで公開しています。各リポジトリへのリンクは Copper PDF ドライバのダウンロード ページをご覧ください。

従来の配布形式について

今後はパッケージマネージャによるインストールを推奨します。従来提供していたRPMやDEBパッケージはレガシーとしての扱いとなります。

なお、一部のドライバについてはパッケージマネージャを使わない環境向けに、zip / tar.gz 形式のアーカイブも GitHub Releases で配布しています。詳しくは Copper PDF ドライバのダウンロード ページをご覧ください。


PDF

Node.js版ドライバ 1.0.0 をリリースしました

Node.js向けのCopper PDFドライバ(CTI Driver)をリリースしました。TypeScriptで実装されており、Node.js 14以降で動作します。

これにより、Express等のNode.jsベースのWebアプリケーションや、サーバーサイドのバッチ処理から、Copper PDFを使ったPDF生成が可能になります。

インストール

npmで直接インストールできます。

npm install https://github.com/zamasoftnet/cti.nodejs.git

使い方

import { get_session } from 'copper-cti';

const session = get_session('ctip://localhost:8099/', {
    user: 'user',
    password: 'kappa'
});

try {
    session.setOutputAsFile('output.pdf');
    const writer = session.transcode('.');
    writer.write('<html><body><h1>Hello!</h1></body></html>');
    writer.end();
    await session.waitForCompletion();
} finally {
    session.close();
}

CommonJS(require)でも利用できます。リソース解決やストリーム出力など、他の言語版ドライバと同等の機能を備えています。

詳細は GitHubリポジトリ および APIドキュメント を参照してください。

Copper PDF ドライバのダウンロード からもアクセスできます。


PDF

Python版ドライバ 3.0.0 をリリースしました

Python 3系に対応したドライバをリリースしました。

Red Hat Linux 8, 9 に対応したRPMもリリースしています。

Copper PDF ドライバのダウンロード からダウンロードしてください。


PDF

Copper PDF 3.2.32 をリリースしました

最新版は以下のアドレスからダウンロードしてください。
Copper PDF サーバーのダウンロード

SVG画像を処理する際に、ベースURLがカレントディレクトリ”.”の場合にSVGの処理が中断するバグに対応しました。

output.pdf.fonts-policy=outline の時に空の Firefox の PDF ビューアで表示されない現象に対応しました。

テキストが &nbsp;だけだった場合に空のグラフィックス (q Q 命令の並び)が生じることが原因でした。


PDF

Copper PDF 3.2.31 をリリースしました

最新版は以下のアドレスからダウンロードしてください。
Copper PDF サーバーのダウンロード

参照した画像にEXIFによる回転情報がある場合に対応しました。

従来のバージョンではIMGタグなどで参照されたJPEG画像の付随情報EXIF)で90度単位で回転されていた場合に、回転が適用されていませんでしたが、本バージョンから回転が適用されるようになりました。

IPAex フォントなどで、Unicode 補助面用 CMapを優先して使用してしまうために、一部の文字にフォントが適用されないバグに対応しました。

フォントに含まれる文字コードから文字への参照情報の選び方に問題があり、特にIPAex フォントでは一部の文字が使用できない問題が生じていたため、全ての文字を利用できるように対応しました。


PDF

Copper PDF 3.2.30 をリリースしました

最新版は以下のアドレスからダウンロードしてください。
Copper PDF サーバーのダウンロード

インストールパッケージ、実行環境を改善しました

  • Linux で systemctl を使う環境で copper ユーザーでサービスが動くようにしました。
  • Javaバンドル版のOpenJDKを11.0.26.+4にアップデートしました。


PDF

Copper PDF 3.2.29 をリリースしました

最新版は以下のアドレスからダウンロードしてください。
Copper PDF サーバーのダウンロード

インストールパッケージ、実行環境を改善しました

  • Windows 版で実行ファイルが JAVA_HOME 環境変数により JavaVM を選択するようにしました。
  • useradd: Warning: missing or non-executable shell ‘/bin/nologin’ の警告が出ないようにしました。
  • バンドル版の JavaVM を最新のものにしました。

PDF

Copper PDF 3.2.28 をリリースしました

最新版は以下のアドレスからダウンロードしてください。
Copper PDF サーバーのダウンロード

レイアウトの不具合を修正しました

以下のようにテーブルを入れ子構造にした場合に、内部の幅の%指定が正しく反映されない不具合に対応しました。

<table style="width: 200pt; margin: 0 auto;"><tr><td>
<table style="width: 100%;">
`	<tr>
		<td>
<span style="display: inline-block; width: 20%;">左</span>
<span style="display: inline-block; width: 20%;">右</span>
</td>
		<td>AUTO TABLE</td>
	</tr>
</table>
</td></tr></table>

PDF

Java版ドライバ 2.2.3をリリースしました

こちらからcti-java-2.2.3をダウンロードして下さい。

JavaサーブレットでPDFの Content-Type: application/pdf ヘッダを出力する機能で、空のcharsetパラメーターが加わってしまう不具合に対応しました。


PDF

Java版ドライバ 2.2.2をリリースしました

こちらからcti-java-2.2.2をダウンロードして下さい。

Tomcat 10 では javax.servlet が廃止され、 jakarta.servlet パッケージのみになっていることに対応するものです。jakarta.servletを使用する場合は、jp.cssj.cti2.helpers.jakartaパッケージ内のクラスを使ってください。

附属のサンプルプログラムを更新しておりますので、そちらを参考に実装してください。

javax.servlet 4, jakarta.servlet 5に対応しています。


PDF