リンクをクリップボードにコピー
コピー完了
Adobe Express で QRコードの作成ができるようになったとのことで、とあるURLのQRコードを作ってみました。見た目は問題なく、pngやjpgでダウンロードした画像データにもまったく問題はなかったのですが、svgデータだけこのようにドットとドットの間に隙間らしきものが出てしまいます。
イラストレータに読み込んで確認すると、多くの矩形を並べてマークを作っており、それを使って黒い背景にクリッピングマスクをかけて表現しているようで、その矩形同士の間に隙間が生じるようです。必ずしもすべての接合部分に隙間ができるわけではなく、その発生のルールは不明です。
解決方法としては、マスクを掛けている複合パスに0.2pt程度の線をつけてやると、隙間を埋めることができそうです。ただし、この方法はセルから黒色をはみ出させることで隙間を埋めているため、必ずしも正しい方法とは言えません。
もうひとつの解決方法は、セルの大きさを変えずに隙間をなくすことができますが、ちょっと面倒です。複合パスを解除して三隅にあるファインダパターンという大きな四角を除いたパーツだけを選択して、パスファインダで合流させます。ファインダパターン部分は二重の四角なのでパスファインダで分割して作ってやります。こうすることで、セルからはみ出させずに隙間をなくすことができました。
うーん、でも面倒くさい。仕事柄 svg データのQRコードが欲しいのですが、こんな手間かけるぐらいなら無料で野良のオンラインサービスのほうが楽です。信頼性を考えて Express 使ってみましたが、ちょっと仕事には使えそうにありませんでした。
というわけで、仕事用のQRコードは InDesign のQRコード作成機能を使っているのですが、同じ内容で作成しても、Express と InDesign では違う模様になるんですよねぇ。どちらにもアライメントパターンがあるので、モデル2であることは間違いないのですが、セルの模様はまったく異なりました。もちろん、読み出しは問題なかったので、どちらも正しいコードなんでしょうけど。
リンクをクリップボードにコピー
コピー完了
「イラストレータに読み込んで確認」ということなのですが、それ以外の確認はされていたりするでしょうか。
逆にIllustratorの場合、(バージョンも気になるのですが)GPUプレビューの場合はCPUプレビューでの確認であったり、該当箇所の接する線の座標情報を確認した方がいいかもしれません。
また利用シーン次第でもあり、読み取り自体が本当に問題がないかどうかもあったりはします。
逆に、線を付与することで無用な重なり処理になることがあり、その場合のほうが読み取りする精度に影響をすることがあるとは思います。
QRコード自体がドットの集合体なので、ベクターデータの場合はピクセル系デバイスでの表示ではラスタライザなどの影響をどうしても受ける場合はありますし、結局はそのベクターデータをどのように使うのか次第になってくるところがあります。
リンクをクリップボードにコピー
コピー完了
assause さん、早速のご返信ありがとうございます。
おっしゃる通り、どのように使うのかが問題でして、現状私の環境では成果物として使用するに耐えない品質であるという情報を共有したかったので書き込みました。一応解決手段も記載したので、これ以上の検証は行なうつもりはありません。まさに時間の無駄としか思えないからです。
とはいうものの、書き込みを拝見して再度検討した結果、昨日の解決方法に無駄があることが判明したので、その点だけ修正させてください。
クリッピングマスクを解除して、更に複合マスクを解除、ファインダパターンを除いたパスを合流、ファインダーパス部分を分割という手順を紹介しました。
ところがそんなに手間を掛けなくても、クリッピングマスクを解除して、現れた複合パスに塗りを設定するだけで隙間がなくなりました。おそらくこれで行けるかと思います。
いつの日か、Express で作成したQRコードが実用に堪えるものになる日が来ることを願うばかりです。
リンクをクリップボードにコピー
コピー完了
う〜ん、各セルの実際上のジオメトリを確認してみるとぴた〜っと一致していますね。GPUプレビューの影響でしょう。データ的には全く問題ありません。
Illustrator、InDesignやPhotoshopでQRコード作るならQR CodeMaker Proの利用をお勧めします。