月別アーカイブ: 2017年5月

第137回 「電子帳簿保存法を知らない販売管理システムベンダーさんのトホホな事例 1.」

作成者:アンテナハウス株式会社 益田康夫
資 格:上級 文書情報管理士、簿記3級、行政書士
本ブログの記載内容は、公開日時点での法令等に基づいています。
その後の法令改定により要件が変わる可能性がありますので、最新の法令などをご確認下さい。

電子帳簿保存法を知らない販売管理システムベンダーさんのトホホな事例 1.

某ベンダーのお客様が「「請求書」の発行控えの紙保存を電子化して原本廃棄したい!」との
要望があり、相談を受けました。
この場合、皆様でしたら3つの選択肢があることにお気づきでしょうか?

1.紙のまま保存する
2.スキャナ保存する
3.書類をデータで保存

いかがでしょうか?

1.は法令の基本は紙で7年以上納税地に保管ですから、皆様のご認識の通りです。
紙の保存は、不効率なので、緩和された電子帳簿保存法を研究して4条3項スキャナ保存である
2.の検討をされるのは最近のトレンドです。

【参考:法4条3項】
前項に規定するもののほか、保存義務者は、国税関係書類(財務省令で定めるものを除く。)の全部又は一部について、当該国税関係書類に記載されている事項を財務省令で定める装置により電磁的記録に記録する場合であって、所轄税務署長等の承認を受けたときは、財務省令で定めるところにより、当該承認を受けた国税関係書類に係る電磁的記録の保存をもって当該承認を受けた国税関係書類の保存に代えることができる。
では、「3.書類をデータで保存」については皆様ご承知でしょうか?

次回は、その点について解説しましょう。

――【広告】――
・アンテナハウスは、中小企業皆様のペーパレス経理への挑戦をサポートします!
・「ScanSave(スキャンセーブ)」は、証憑書類のスキャナ保存の要件確保用の
安心、低価格、短期導入可能なパソコン用スタンドアロンソフトです!

2016年9月よりクラ・サバ版としてScanSaveネットワーク接続版をリリースし中堅企業様の様々なニーズにお応えしております。

 ScanSave-Lite-V2  (ソフト単体)適時入力専用  18万円
 ScanSave-V2  (ソフト単体)業務サイクル+適時入力   68万円
ScanSave-Lite-V2用
適時入力導入支援
コンサルティング
適時入力専用
タイムスタンプ2,000個/月+スキャナix100+導入支援付き
 26万円~
ScanSave-V2用
業務サイクル入力導入支援
コンサルティング
業務サイクル+適時入力
タイムスタンプ2,000個/月+スキャナix500+適正事務処理要件コンサルティング+導入支援付き
 32万円~

・詳しくは、 https://www.antenna.co.jp/scansave/ をご覧ください。
・問合わせは、 sis@antenna.co.jp まで


「宇多田ヒカル/First Loveの「だろう」説「だはー」説に終止符」

宇多田ヒカルが紅白に出るのを楽しみにしていたので「花束を君に」を生で聴くことできてうれしかったです。
この「花束を君に」は美しい歌だと思いますが、歌詞をよく聴いてみると亡くなった人に捧げる歌なんですね。
結婚式でこの歌を使う人もいるようですが…

さて本題です。
宇多田ヒカルの「First Love」ですが、歌詞で「誰を想ってるんだろう」の「だろう」の部分が実は「だはー」だという説があります。
実際にそう思って聴くと「だはー」に聴こえるから不思議なものです。

YouTubeで「First Love」を歌っている人の中にも「だはー」派の人がいるようです。

有名人はカバーでどう歌っているかというと

女性
・JUJU「ださー」
・May J.「だらー」
・Ms.OOJA「だはー」
男性
・クリス・ハート「だろう」
・河口恭吾「だろう」
・德永英明「だろう」
・中西保志「だろう」
・大友康平「だひょ~ん」

など様々です。
女性はオリジナリティを出して、男性は歌詞通りといったところです。
大友康平のはギャグだと思いますが…

実際のところ、宇多田ヒカルは「だろう」と歌っているのでしょうか、「だはー」と歌っているのでしょうか?
「だはー」と歌っていると明言している人もいるようですが、正解は自信を持って「だろう」です。
本人に聞いた訳ではないのにどうして「だろう」と言えるのでしょうか?
音を加工できるソフトがありますが、そいったソフトを使って半音5個か6個分下げて聴いてみてください。
もう「だろう」以外には聴こえようがありません。
宇多田ヒカルは「だはー」ではなく歌詞通りに「だろう」と歌っていたのです。
知ってしまったからには「だはー」とは歌えないですね。「だろう」と歌いましょう。


高速なPDF表示を実現!『Antenna House PDF Viewer SDK SP版』

『Antenna House PDF Viewer SDK SP版』は高速な PDFファイルのレンダリングを実現した .NET Framework のライブラリです。

4月21日より評価版の配布を開始しました。ご興味があればぜひお試しください。

『Antenna House PDF Viewer SDK SP版』はWindows 上の .Net Framework に対応したアプリケーションへのPDF表示機能を組み込みや、PDFファイルの画像ファイルへの変換や印刷などに利用することができます。
高速なPDFレンダリングにより、スムーズな画面表示や、画像出力や印刷時間の短縮が見込めます。製品ページに速度改善の計測例がございますのでご覧ください。
また、すぐにお試しいただける簡易PDFビューアーのサンプルコードを添付しておりますので、評価版でぜひお試しください。
現在はPDFの描画機能が中心でまだ開発途中ですが、今後、検索やテキスト抽出など他の機能も充実していく予定ですので、ご期待ください。

詳しい製品情報や評価版の申し込みについて、下記のページをご覧ください。

製品ページ:
https://www.antenna.co.jp/oem/ViewerSDK/sp_edition.html
評価版のお申し込み、お問合せ:
https://www.antenna.co.jp/oem/ViewerSDK/sp_edition.html#pagelink04


Server Based Converter V6.0:PDF変換, Flash変換, イメージ変換, サムネイル作成, PDFセキュリティ, Office変換

Server Based Converter  V6.0 では Microsoft Word(.docx) 用読み込みエンジンの改定を行いました。
文書の処理部分を1から作成しなおしました。

以前の読み込みは、リッチテキストコンバータから続くOffice 文書処理技術の蓄積で作成されていました。 最初は doc(OLE) ファイルの処理から始まったプログラムは年月を重ね、プログラム、データ構造などが肥大化し新しい機能への対応も難しくなっていました。

最新の Word ファイル(.docx) の中身は XML ファイルです。
XML 文書処理においては AH Formatter という技術もあり、古い doc 形式のデータ構造から見直し、作り直すこととなりました。

Word の OOXML (Office Open XML) は文書であり、本文 (document.xml) は文字列の並びに Property が付いているだけです。文書ですから先頭からシーケンシャルに処理することが可能になります。
新しいエンジンではシーケンシャルに文書のタグをハンドリングし、処理が終わればデータのメモリは順次開放していきます。このあたりのデータ構造も新しく作り直し、使用メモリ量も抑えることができました。少ないメモリで動作するということは、大きな文書の処理でもスピードが遅くなることが少なくなります。

ページ処理は AH Formatter の Area という構造を使います(以前も使ってはいた)。文書では のパラグラフごとに BlockArea を作成し、Word の段落属性を attribute として設定します。BlockArea 内には LineArea を作成し、親の BlockArea の情報で TextArea を並べ行を作成していきます。
この Area 構造は AH Formatter と同じで、行などエリアの分割なども AH Formatter の組版エンジンプログラムを呼び出し処理します。

また、文字列以外のシェープなどの処理は、今まである Excel,PowerPoint と共通化して同じ処理を行っています。このように新しいエンジンを1から作成したといっても、AH Formatter などの既存のプログラムを使っており、安定感のあるプログラムになっています。
再現性が向上したとの評価もうけています。

興味のあるかた、以前のバージョンをお使いのかたは 評価版 をお試しください。

プログラマの疑問

Word の用紙設定 はなぜ最後にあるのだろう。
用紙設定を取得するために1度最後まで解析する必要がある。
途中にもあるので読み飛ばすわけにはいかない。

30年以上前に日本語ワープロを開発していたプログラマの疑問

[1] AH Formatter


PDFのレイヤー

PDFには、レイヤーという便利な機能があります。
レイヤーは、PDFの内容をまとめて、表示を切り替えたり印刷を切り替えたりします。 Acrobatでは次のようなダイアログでコントロールします。

layer-dialog

AH Formatter には、このレイヤーを出力する機能があります。
今回は、PDFのレイヤーでの言語指定について取り上げます。

レイヤーで指定した言語は、どのように振る舞うのでしょうか。
仕様では次のように書かれています(PDF 32000-1:2008)。

Language dictionary (Optional) A dictionary specifying the language of the content controlled by this optional content group. It may contain the following two entries:

Lang (required) A text string that specifies a language and possibly a locale (see 14.9.2, “Natural Language Specification”). For example, es-MX represents Mexican Spanish.
Preferred (optional) A name whose values shall be either ON or OFF. Default value: OFF. it shall be used by conforming readers when there is a partial match but no exact match between the system language and the language strings in all usage dictionaries. See 8.11.4.4, “Usage and Usage Application Dictionaries” for more information.

Language については、次のようにも書かれています。

Language: This category shall allow the selection of content based on the language and locale of the application. If an exact match to the language and locale is found among the Lang entries of the optional content groups in the usage application dictionary’s OCGs list, all groups that have exact matches shall receive an ON recommendation. If no exact match is found, but a partial match is found (that is, the language matches but not the locale), all partially matching groups that have Preferred entries with a value of ON shall receive an ON recommendation. All other groups shall receive an OFF recommendation.

PDFに指定されたLanguageは、アプリケーションの言語と地域に基づくと書かれています。アプリケーションとは、PDFのビューア、例えばAcrobatのことです。アプリケーションがレイヤーをサポートしていなければ、もちろん何も起こりません。Acrobatはサポートしています。

PDFに、日本語用のレイヤーと英語用のレイヤーを用意しておけば、アプリケーションの言語によって自動的に一方が表示され、他方が表示されないということができます。では、アプリケーションの言語とは何でしょう。仕様書中でそのことについて書かれている部分はありません。
そこで、どうすれば言語によるコントロールが意図どおりにできるのかを、Acrobatを用いて、試行錯誤を交えながらいろいろ探ってみました。

PDFには、Catalog辞書に言語を明示することができます。これは、文書のプロパティで確認することができます。AH Formatter では、<fo:root> に記述した言語がそこに反映されます。

<fo:root ... xml:lang="ja" ...>

property-dialog

アプリケーションの言語とは、これのことでしょうか。
いいえ、この言語はレイヤーの言語とは関係ありません。
これは、PDFの言語であってアプリケーションの言語ではありません。
アプリケーションの言語とは、Acrobatでは環境設定の言語環境にあるアプリケーションを表示する言語に対応することがわかりました。

lang-env

では、アプリケーションの言語は、具体的にはどう表記されているのでしょうか。14.9.2.2 Language Identifiers には次のような記述があります。

A language identifier shall either be the empty text string, to indicate that the language is unknown, or a Language-Tag as defined in RFC 3066, Tags for the Identification of Languages.

Although language codes are commonly represented using lowercase letters and country codes are commonly represented using uppercase letters, all tags shall be treated as case insensitive.

ざっくり言えば、PDFに書かれるLangの値は、RFC 3066 に従っていて大文字小文字は区別しない、ということです。RFC 3066 の言語コードは ISO 639、国コードは ISO 3166 によります。アプリケーションの言語も、ISO 639 と ISO 3166 で表現されているはずです。
実際にAcrobatでアプリケーションを表示する言語を変更すると、どこにどういう情報が書かれるのかはわかりませんでした。しかし、日本語なら ja とか ja-JP などが設定されると、常識的には予想するでしょう。

Preferredを指定していないと、Langに指定したものとアプリケーションの言語の間では完全一致性が判断されることになっています。そこで、日本語環境のとき、どういう指定をしたら完全一致するのかを調べました。

  • ja ⇒ NG
  • jpn ⇒ NG
  • ja-JP ⇒ NG
  • jpn-JP ⇒ NG
  • jpn-JPN ⇒ NG
  • ja_JP ⇒ NG
  • jpn_JP ⇒ NG
  • jpn_JPN ⇒ NG
  • ja-jp ⇒ OK

結果は、まったく想定外でした。仕様には大文字小文字区別しないと明記してあるし、国コードは大文字で表記するのが普通とも明記されています。これはどういうことでしょうか。Acrobatは仕様どおりに動作しているようには見えません。Acrobatの不具合なんでしょうか。仕様の見落としがあるのでしょうか。

完全一致させるのにこんな試行錯誤した上、それが正しいのかどうか裏づけも取れないのでは、完全一致を使うのは現実的ではない気がします。Preferredを指定すると、かなりあいまいな指定でもマッチします。
日本語は、それを話す国は日本しかないですが、英語やポルトガル語スペイン語などはそんなことはありません。例えば、en-US(米国英語)と en-GB(英国英語)を区別したいこともあるはずです。Preferredでは、それらを区別させることはできませんでした。どちらもすべての en にマッチしてしまうようです。つまり、国コードを明示したいなら、Preferredを指定できないということになります。

次に Preferred な ja と、そうでない ja-jp の指定を混在させたらどうなるか見てみます。
日本語環境ではどちらも表示されそうなものですが、ja-jp の方だけ表示されて、ja は表示されません。完全一致するものが見つかったらそれしか表示されない、ということになっているからのようです。このことは、en-US と en-GB を用意し、両者の共通部分を en として表現したくても、できないということを意味します。

AH Formatter V6.4 では、次のようにレイヤーへの言語指定を行ないます。
実際には重なり合った領域に内容を配置するでしょうから、<fo:block-container> などを利用することになります。

<?xml version="1.0"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"
         xmlns:axf="http://www.antennahouse.com/names/XSL/Extensions"
         axf:layer-settings="'Japanese layer' lang 'ja' preferred,
                             'English layer' lang 'en' preferred">
...
<fo:block axf:layer="'Japanese layer'">
こんにちは
</fo:block>
...
<fo:block axf:layer="'English layer'">
Hello
</fo:block>
...

AH Formatter V6.4 MR3 以降を利用してください。

 


Acrobat の不満点(その2)

前回 に引き続き、Acrobat の不満点を書いてみます。

Acrobat にて PDF を作成し、印刷も視野に入れていたため CMYK の ICC Profile を出力インテントに指定して PDF/A-2 形式で保存しました。

PDF/A-2 ではベースバージョンが PDF1.7 となったため、PDF1.4 というベースバージョンの制約があった PDF/A-1 と比べて非常に有効なバージョンになります。
以下は PDF/A-2 によって実現可能となった機能の一部です。

  • PDF 1.4 -> PDF 1.5
    JPEG2000圧縮によるイメージ
    オブジェクトストリーム、Xrefストリーム(圧縮率の向上)
    オプショナルコンテント
    XFA Form
  • PDF 1.5 -> PDF 1.6
    暗号化機能の強化(AES暗号化の追加)
    カラースペース追加(DeviceN、NChannel)
  • PDF 1.6 -> PDF 1.7(ISO 32000-1)
    3Dアートワーク
    ポータブルコレクション

PDF/A-2 の詳細につきましては、PDF資料室 過去のブログ にまとめておりますので、参照ください。

さて、PDF/A-2 で保存した結果、出力された出力インテントが RGB の ICC Profile に置き換わってしまいました。
作成した PDF にはテキスト注釈、スタンプ注釈といった注釈が含まれていたのですが、この事が原因で強制的に RGB となってしまったのでしょうか。
PDF/A-2 の仕様では CMYK が使用できない、といった制限はありませんので、不思議な結果となりました。
CMYK の ICC Profile を出力する方法はあるのでしょうか。

<< その(1)


Pages: Prev 1 2