Skip to main content
Participating Frequently
December 28, 2018
Answered

Indesignでpng書き出しをするとサイズが変わる

  • December 28, 2018
  • 2 replies
  • 1501 views

標題の通りなのですが、下記工程で、png書き出しをすると、高さのサイズに変化があります。

①Indesignで選択部分を書き出しの設定で、テキストが打ちこまれたテキストフレームをpngに書き出します。

②Photoshopで開いて画像解像度でサイズを確認すると、横幅に変化は見られませんが、高さは、Indesign上で表示されているテキストフレームより3mmくらい大きくなっています。厳密にいうと、3mmくらい余分な透明の余白が出ます。

※テキストフレームオブジェクト以外、画像のみ、イラストなどのオブジェクト、選択範囲内にペーストされたオブジェクト等には変化が見られません。

制作環境:Win7, Indesign CS6, Photoshop CS6

なにか良い解決方法がありましたら、ご教授いただければと思います。

※InDesign (us) から InDesignコミュニティフォーラム (Japan) に移動しました [moderator]
    This topic has been closed for replies.
    Correct answer monokano

    テキストフレームの画像書き出しで、上下にどうして余白ができてしまうのか、考察してみました。

    上図は Zapfino というフォントです。字形がテキストフレームからはみ出しています。「テキストフレームサイズ=書き出しサイズ」にしてしまうと、字形が欠けた状態で書き出されてしまいます。実際には字形が欠けることなく書き出されるのですが、上下の余白がかなり広くなってしまいます。

    この余白はいったい何なのか。おそらく、フォントが保持しているFontBBoxという数値情報をもとにしていると思われます。

    FontBBoxは、そのフォントが持つ字形を全て重ね合わせたときの最外周の矩形です。この矩形の範囲であれば、絶対に字形が欠けない安全領域です。上図の青線はZapfinoのFontBBoxで、かなり広いことがわかります。

    InDesignは、テキストフレームの画像書き出しで字形が欠けないようにFontBBoxの天地サイズで書き出しており、それが余白になるのでしょう。なお、FontBBoxはフォントによってサイズが異なるので、フォントによって余白の程度も異なります。

    追記:

    左右方向はテキストフレームサイズなので、字形が欠けてしまいます。悩ましいところです。

    2 replies

    monokano
    Community Expert
    monokanoCommunity ExpertCorrect answer
    Community Expert
    December 29, 2018

    テキストフレームの画像書き出しで、上下にどうして余白ができてしまうのか、考察してみました。

    上図は Zapfino というフォントです。字形がテキストフレームからはみ出しています。「テキストフレームサイズ=書き出しサイズ」にしてしまうと、字形が欠けた状態で書き出されてしまいます。実際には字形が欠けることなく書き出されるのですが、上下の余白がかなり広くなってしまいます。

    この余白はいったい何なのか。おそらく、フォントが保持しているFontBBoxという数値情報をもとにしていると思われます。

    FontBBoxは、そのフォントが持つ字形を全て重ね合わせたときの最外周の矩形です。この矩形の範囲であれば、絶対に字形が欠けない安全領域です。上図の青線はZapfinoのFontBBoxで、かなり広いことがわかります。

    InDesignは、テキストフレームの画像書き出しで字形が欠けないようにFontBBoxの天地サイズで書き出しており、それが余白になるのでしょう。なお、FontBBoxはフォントによってサイズが異なるので、フォントによって余白の程度も異なります。

    追記:

    左右方向はテキストフレームサイズなので、字形が欠けてしまいます。悩ましいところです。

    monokano
    Community Expert
    Community Expert
    December 29, 2018

    たしかに余白が出てしまいますね。

    選択範囲内にペーストされたオブジェクト等には変化が見られません。

    これを利用して、グラフィックフレーム内に書き出したいテキストフレームを選択範囲内ペーストすれば、余白はなくなります。

    下記の手順が最も簡便かもしれません。

    1. 書き出したいテキストフレームAを複製し、テキストフレームBを作る。
    2. テキストフレームAの中の文字を削除して空にする。
    3. テキストフレームBを選択し、メニュー[編集>コピー(またはカット)]
    4. テキストフレームAを選択し、メニュー[編集>選択範囲内へペースト]

    これでテキストフレームAが自動的にグラフィックフレームに変わり、全く同じサイズと位置にテキストフレームBがある状態になります。