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

Copper PDF 3.0.11をリリースしました。「Copper PDF サーバーのダウンロード」から入手してください。

UNICODEの制御文字が含まれる文書で文字化けが発生していた問題、不正なXML宣言を含むHTMLの処理に関するバグを修正しました。

また、Copper PDFにはページ数の制限機能がありますが、従来は制限に達するとエラーとなり出力結果が得られなくなっていたのを、途中までのページをPDFとして出力する機能を追加しました。

変更点 UNICODE制御文字の扱いについて変更しました

・以下の文字を幅ゼロの文字として認識するようにしました U+200B U+200C U+200D U+200E U+200F U+202A U+202B U+202C U+202D U+202E U+2060

・以下をスペース文字として認識するようにしました U+200B U+200C U+200D U+200E U+200F U+202A U+202B U+202C U+202D U+202E U+2060

以下のバグを修正しました

・XML宣言が2つ以上あるとページが出力されない

以下の機能を追加しました

“output.page-limit.abort”に”normal”を追加することで、”output.page-limit”でページ数を制限した際に、途中までのページをPDFとして出力するようにしました。

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

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

以下のバグを修正しました

ドライバ付属のCommons HTTP ClientでHTTP通信を行った時に、 NoClassDefFoundError: org/apache/commons/logging/LogFactory が生ずるバグを修正しました。 Tomcat等のサーブレットエンジンから使用した場合には影響ありません。

サンプルを追加しました

Antで文書を一括変換するサンプルのbuild.xmlファイルを加えました。

copperコマンドのシェルスクリプト、batファイルを加えました。 これらについては、以下のドキュメントを参照して下さい。 https://dl.cssj.jp/docs/copper/3.0/html/2100_tools.html#admin-copper

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

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

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

Copper PDF 3.0.10をリリースしました。「Copper PDF サーバーのダウンロード」から入手してください。

変更点 以下のバグを修正しました

“output.page-margins”に4つの値を指定するとエラーになる インラインブロックの中に大きさを%指定した画像があると、画像の大きさがゼロになる

SELECTフォームパーツの表示をブラウザに近くなるように改善しました 文字コードの検出を一般的なブラウザに準拠するようにしました

XHTML(拡張子.xhtmlでMIME型”application/xhtml+xml”の場合) 1. UTF-8, UTF-16のBOM 2. XML宣言

HTML(拡張子.html, .htmでMIME型”text/html”の場合) 1. UTF-8, UTF-16のBOM 2. HTMLのMETAタグ(複数METAによる指定がある場合は最初の指定を優先する) 3. XML宣言

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

バージョン3.0.7からアップグレードしたCopper PDFが起動しない場合の対処方法について

Copper PDFバージョン3.0.7を、.rpmまたは.debパッケージにより3.0.8以降にアップグレードした際に、Copper PDFが起動しなることがあります。これは、3.0.7の.rpmまたは.debパッケージに不具合があり、必要なユーザー(copper)が削除されることが原因です。他の方法でインストールした場合は影響ありません。

対処方法

rootで以下のコマンドを実行してcopperユーザーを追加することで起動するようになります。

/usr/sbin/groupadd -r copper /usr/sbin/useradd -r -d /var/lib/copper-pdf -c “Copper PDF” -s /bin/nologin copper -g copper chown copper:copper /etc/copper-pdf/password.txt

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

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

Copper PDF 3.0.9をリリースしました。「Copper PDF サーバーのダウンロード」から入手してください。

変更点 以下のバグを修正しました

画像(PDFではなくPNG, JPEGなど))として出力時に縦書きの文字が2重3重に描画される <input type=”text”> に width:auto; を指定すると幅が0になる <input type=”file”> のテキストボックス部分が2重に表示される

以下の優先順位でHTMLの文字コードを認識するようにしました

1. UTF-8, UTF-16のBOM 2. XML宣言 3. HTMLのMETAタグ(複数METAによる指定がある場合は最初の指定を優先する) 従来はBOMが認識されず、複数のMETAタグが存在するとHTMLが正しく読み込まれない不具合が生じていました

一般的なブラウザとの互換性を向上させました

‘*’をHTMLの要素名の中に使えるようにしました。 <a*> のような名前のタグを使用でき、CSS内で a* {color:Red;} のような指定ができます フォーム要素(INPUT, SELECT, BUTTON)は上位の要素のフォントサイズの影響を受けないようにしました プルダウンメニュー(SELECT)のボタンを表示するようにしました

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

Q. RESTインターフェースで大きなデータをPOSTするとエラーになります。

RESTインターフェースでCopper PDFにアクセスする場合、パラメータが application/x-www-form-urlencoded 形式だと、POSTできるサイズに上限があります(概ね190KB)。

大きなデータをRESTインターフェースで送る場合は、multipart/form-data 形式で送って下さい。以下はRubyとPythonのコード例です。

Ruby:

require ‘httpclient’

# 変換対象のHTML data = <<DATA

RubyからCopper PDFを使う。

DATA

# POSTの準備 client = HTTPClient.new postdata = { “rest.user” => “user”, “rest.password” => “kappa”, “rest.main” => data, }

# 大きなデータを扱えるようにmultipart/formdataで送信(boundaryは適当な文字列) boundary = “3w48588hfwfdwed2332hdiuj2d3jiuhd32” puts client.post_content(“http://localhost:8097/transcode”, postdata, “content-type” => “multipart/form-data, boundary=#{boundary}”)

Python:

import urllib2

# multipart/form-dataの出力(boundaryは適当な文字列) boundary = […]

.NET版ドライバにDLL(.NET3.5, 4.0用)を追加しました

Copper PDF の.NET版ドライバに、.NET 3.5, .NET 4.5 向けにビルド済みのDLLを添付しました。こちらのアドレスからダウンロードして下さい。

http://sourceforge.jp/projects/copper/releases/?package_id=12608

従来、.NET版ドライバには対応.NETバージョンを明示していませんでしたが、.NET 3.5以降が対応バージョンとなります。

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

表組み組版サンプル

申請書

HTML / PDF

表組みを活用した申請書です。Copper PDFの表組みは普通のブラウザと同じように内容に合わせて列の幅が自動調整されます。colspan, rowspanによるセルの接続もできます。

改行されたくない部分が改行されてしまう場合には、セルに対して white-space: nowrap; を指定することで改行を回避することができます。

固定表組み

HTML / PDF

TABLEに対して table-layout: fixed; を指定すると、それは固定表組みとなります。固定表組みではテーブルセルの内容によって列の幅が変わりません。

COL, COLGROUPによって明示的に列の幅を指定するか、最初の行のTR, THに指定した列の幅が適用されます。何も指定しない場合、全ての列の幅が同じになります。

固定表組みのメリットは、列の幅を完全に固定することができること、Copper PDFによる処理が速くなるということです。長いテーブルは固定表組みにすることをお勧めします。

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

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

Copper PDF 3.0.8をリリースしました。「Copper PDF サーバーのダウンロード」から入手してください。

変更点 以下のバグを修正しました

PDFのMediaBoxが、通常と比べて上下逆さまなため、Apache PDFBoxでページの高さを正しく検出できない問題に対応しました

JDK1.5以外で画像(PDFではなくPNG, JPEGなど)として出力時に文字が二重に表示される問題に対応しました

以下の改良をしました

RPM, DEBパッケージでsudoを不要にしました

Red Hat Linux, CentOSでRPMによるアップグレード時にCopper PDFがrootで起動される不具合に対処しました

座標変換のために、以下のCSS3プロパティを実装しました

‘-cssj-transform’ ‘-cssj-transform-origin’ ※他のブラウザとの互換性のために-webkit- -moz-で始まるプロパティ名が使えます

透明色のために、次のCSS3関数を実装しました

rgba

テキスト装飾のために、次のCSS3プロパティを実装しました

‘-cssj-text-fill-color’ ‘-cssj-text-stroke-width’ ‘-cssj-text-stroke-color’ ‘-cssj-text-stroke’ ※Google Chromeとの互換性のために-webkit-で始まるプロパティ名が使えます

‘text-shadow’(一部制約あり)

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大

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

Java版ドライバにはApache系の(org.apache.という名前で始まる)クラスが含まれており、 アプリケーションがApache系のライブラリを使っている場合は衝突することがあります。

新しいバージョンではcti-driver-2.x.x-min.jarというApache系のライブラリを含まない、小さなjarを用意しています。

このjarではHTTP/REST接続ができないという制約があります。

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

 

PDF スタイル サイトの設定 横書き 縦書き 縦2段 文字 特小 小 中 大 特大 周囲余白 なし 小 大