• 締切済み

ビットマップに変換するとサイズが増加

WEB素材を Corel Draw X5 で作ってるんですけど、 ビットマップに変換したとたんに サイズが1~2ピクセル増加することがあるのは わけがわからないです。 たとえば 50 px X 50px の矩形を描いてその上に 極細で描いた長さ50 pxの横線を重ねます。 全体のサイズは 50 px X 50px のままですが、 ビットマップに変換するとかPNG形式にエクスポートしたとたんに 横だけが 51px とか 52px に増えちゃいます。 ピクセル増加を防ぐ方法とかないですか?

noname#165208
noname#165208

みんなの回答

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

ANo.1です。 書き忘れていましたが、当方Corel Drawを使っていませんので、32bitBMPで保存できるかどうかは把握していません。 32bitBMPで保存出来ない場合、最初から4の倍数である52ピクセルで作成されることをお勧めします。

noname#165208
質問者

お礼

ありがとうございます。 「ビットマップに変換」には RGBカラー(24ビット)、 CMYKカラー(32ビット)などの オプションがあります。 ところで 52 x 52 でも同じ現象がでました。 32ビットでもでます。 書き忘れましたが、つねにその現象が出るのでなくて、 たまにうまく行く場合もあります。 CorelDrawX5では拡大するとビット単位で なかを見れるようになってますが、 同じ極細線でも細さが濃い色の1ビット分で表示されたり 濃いのと淡いのとで2ビット分の太さで表示されたりと 動作がきまってないようです。 その拡大表示にて、 線の端をつまんで移動させるとその端が淡い色にかわるときがあって その状態でビットマップに変換すると大体(いつもではなく) うまく行くようです。 このあたりの動作が不安定なので 対策として200x200くらいのオブジェクトをつくって その上に重ねる線は長さを199くらいにしておき、 ビットマップに変換後、50x50に縮小する等のことを 考えています。

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

BMPは横一ラインのデータ長が4byteの倍数である必要があります。 32bit(1677万色)BMPの場合は、1ピクセル=4byteなので横のサイズを気にする必要はありませんが、 8bit(256色)BMPの場合は1ピクセル=1byte、24bit(1677万色)BMPの場合は1ピクセル=3byteなので横サイズは4の倍数でなくてはいけません。 そのため、変換時に自動調整されて4の倍数である52ピクセルになっていると思われます。 50ピクセルにしたいなら、32bit(1677万色)BMPに変換しましょう。

関連するQ&A

  • 紙サイズのピクセル変換ってなんですか?

    こんにちは。 紙サイズのピクセル変換ってなんですか?どんな時に利用するのでしょうか? 普段はPhotoshopを利用しています。その際にプリントサイズ(mm)と解像度(いつもは350~)を 設定しますが‥ 紙サイズのピクセル変換ででたピクセルサイズ(例えばA4の300dpiで横幅3507.8px~略となりました、という場合)にしてあれば解像度は72dpiでも300dpi相当になると言うことでしょうか? 質問の意図が上手く伝わるか分かりませんが、出力前提で解像度のない場合ってあるんですか? よろしくお願いします。

  • Gimp→Illustratorでサイズが変わる

    Gimp作成PNGをIllustratorで開くと、サイズが変わってしまいます。 環境:  OS Mac10.7.2 Lion、Illustrator CS5、Gimp(X11)XQuartz 2.6.3 (xorg-server 1.10.3) 紙媒体の印刷データを作っているのですが、Gimpで人物の背景切取透過をしてPNGに書き換え、 そのPNG画像(3056 × 4592)をIllustratorで開くと、W:733.44 px H:1102.08 pxと、サイズが変わってしまいます。 調べたところ、恐らくカンバスサイズの影響しているようなのですが、 下記を試してみても、なかなか解決しません。。 Gimp>編集>環境設定>新しい画像の設定 >画像サイズ(キャンパスサイズ)3056x4592ピクセル 300dpi RGBカラー 上記キャンパスサイズ変更後、Gimp>開く>修正したい画像ファイル(JPG)>背景切取後PNG >名前をつけて保存←この時ファイル情報をみると3056x4592ピクセルになっており、 プレビューで開いて確認しても、大きいファイルなのですが、Illustratorで同ファイルを開くと、 W:733.44 px H:1102.08 px (PPI 300)と小さくなってしまいます。 恐らくIllustrator側の設定(現在デフォルト)を変更すると解決する気がするのですが、 やってもやってもまったくわかりません。。 同ファイルを開いても、サイズが変わらない方法を教えてください。 お願いします。

  • ワードのクリップアートについて。ビットマップなんでしょうか?

    ワードのクリップアートはすでにパソコンにインストールされているものとWEBからダウンロードするものがありますが、それぞれ拡張子がwmf、aspxとなっています。これらはピクセルでサイズ表記されていますのでビットマップということなのでしょうか?拡大してもドットが荒くならなかったので何者なのか気になります。ふつうGIF、PNG、BMPなどの拡張子ファイルは拡大するとかなり荒くなるのに何故って思います。わかる方よろしくお願いします。またインストールされているものがwmf、ダウンロードするのがaspxと拡張子が違うのも気になります。

  • VOB->MOV変換時の出力ファイルサイズ

    画像処理の初心者です。 Corel社のUlead VideoStudioを使って動画ファイルを、VOB->MOV変換を行ったところ、出力ファイル(MOV)のサイズが、元ファイル(VOB)サイズの3倍~12倍に大きくなってしまい困っております。 質問: 1)MOVファイルはこのように大きなサイズになるのが当たり前なのでしょうか? 2)それとも、変換時に圧縮指定する、ピクセルカラービットを24->16に減じる、などの工夫が必要なのですか? 上記2問についてアドバイス頂けますようお願いいたします。

  • PS CS5でPNG画像をGIF変換すると拡大する

    PhotShopCS5でPNG画像をGIF形式に変換したあと、そのファイルを再度開き、画像解像度で確認すると、ピクセル数は変わらないのに、解像度が150pixel/inch から72pixel/inchに変わってしまい、ドキュメントの幅と高さがほぼ倍になってしまいます。 そのため、画像解像度にて、解像度を150に変更しピクセル数などもPNGのときと同じに設定して保存をし、試しにエクセルに画像を貼り付けると、やはりもとの画像の幅と高さが維持されてしまっています。 やりたいこととしては、元々のPNG画像と同じサイズ(高さと幅)で、エクセルなどで使いたいのですが、PS上でどの用に設定すれば、同じ大きさのGIFファイルに変換できるのでしょうか。 PS CS5に詳しい方に是非ともご教示をいただければと想います。宜しくお願い致します。

  • 困っています。イラレで画像サイズを変更したいです。

    イラレCS3を使っています。 A4サイズで制作したかったのですが、A4のpixel数値3508px X 2480px で作ったら大変大きなファイルになってしまい、ラスタライズ化出来なく困っています。 フォトショの要領でやっていたので、てっきり解像度変更が出来るものだと思っていました。 今のこの巨大なサイズから、オブジェクトの比を保ったままA4サイズに変更したいです。 急用なので大変困っています。お知恵を貸して頂ければ幸いです。

  • ビットマップ画像を読み込むプログラムがうまく行きません。困ってます…。

    こんにちは。大学4年のyu-tinと申します。 現在、大学の研究で使用するためのプログラムとして、以下の機能を持ったプログラム作りに取り込んでいます。 1)ビットマップ画像(グレースケール、縦480×横640pixel)を読み込み、  その画像の1つ1つの画素の輝度値を表示させる 2)読み込んだビットマップ画像を出力させる しかし、作成したプログラムがうまく行きません。以下の3つの問題が発生しています。 a)0行0列~1行383列までの画素値がおかしい。  (0,0,0,0,1,1,1,0,2,2,2,0,3,3,3,0,…,254,0,255,255,255,0 となっている) b)出力した画像の最上部2行程度に、細くて黒い線が表示される。  (読み込んだ画像と全く同じ画像を出力させたい) c)出力した画像が、”ディスクエラー”によりPhotoshopで開けない。  (ペイントでは開ける) その問題のプログラムは、以下の通りです。 しかし、このプログラムは、他人のプログラムに改良を加えて作成したものです。なので、このプログラム自体、私自身が完璧に理解できていない状況です。 私は、プログラミングに関しては初心者に近いので、丁寧に教えて頂けると大変助かります。 研究が先に進まず、大変困っています…。みなさま、本当に、本当によろしくお願い致します。 //ビットマップ画像に関するプログラム。 //画像の表示と輝度値の表示を行う。 #include<stdio.h> #include<windows.h> #include<stdlib.h> #define X_SIZE 640  //画像の横幅(ピクセル数) #define Y_SIZE 480  //画像の縦幅(ピクセル数) #define Z_SIZE 1    //1つの画素に含まれる色の数 void *malloc(size_t size); void main(void) {  int i, j, k;   //ループ用変数 i…縦の画素用, j…横の画素用, k…色数用  int x=0;    //画像の横幅(ピクセル数)*/  int y=0;     //画像の縦幅(ピクセル数)  FILE *fp; /***********元画像データのメモリ確保*********/  BYTE ***mae;  mae=(BYTE ***)malloc(sizeof(BYTE **)*Y_SIZE);  for(i = 0; i < Y_SIZE; i++){   mae[i]=(BYTE **)malloc(sizeof(BYTE *)*X_SIZE);  }  for(i = 0; i < Y_SIZE; i++){   for(j = 0; j < X_SIZE; j++){    mae[i][j]=(BYTE *)malloc(sizeof(BYTE)*Z_SIZE);   }  } /*******画像の読み込み・輝度値の表示*******/  fp=fopen("sample1.bmp","rb");   //画像”sample1”を開く  BITMAPFILEHEADER bmfh;  BITMAPINFOHEADER bmih;  fread(&bmfh,sizeof(bmfh),1,fp);  fread(&bmih,sizeof(bmih),1,fp);  x=bmih.biWidth;  //インフォヘッダに含まれる画像の幅情報をxに代入  y=bmih.biHeight;  //インフォヘッダに含まれる画像の高さ情報をyに代入  for(i = 0; i < y ;i++){   for(j = 0; j < x; j++){    fread(&mae[i][j][0],sizeof(BYTE),1,fp);    if(i<640 && j<480)printf("%d, %d, %d\n",i, j, mae[i][j][0]);   //輝度値を表示   }  }  fclose(fp); /**************画像の表示*************/  //画像”sample1”を”sample2”という名前で出力する  fp = fopen("sample2.bmp" ,"wb");  //ヘッダの書き込み  fwrite(&bmfh,sizeof(bmfh),1,fp);  fwrite(&bmih,sizeof(bmih),1,fp);  for(i = 0; i < bmih.biHeight; i++){   for(j = 0; j < bmih.biWidth; j++){    fwrite(&mae[i][j][0],sizeof(BYTE),1,fp);   }  }  fclose(fp);  //ファイルをクローズ }

  • iPodの動画サイズについて!!

    iPod touch にMp4の動画を入れたいのですが、動画のピクセルが大きすぎて入れることができません・・・ MP4の動画サイズを変換できるようなソフトを教えてください。 現在、Mac OS X のバージョン10.5.6を使用しています。

    • ベストアンサー
    • Mac
  • デジカメプリントの最適サイズを教えてください。

    既出が無さそうなので質問させていただきます。 デジカメで撮影された画像をネットプリントする際に 上下/左右がカットされてしまいます。 どこもカットされないように画像を加工しようと考えているのですが 画像の比率を何ピクセルx何ピクセルにするのが良いのでしょうか。 サイトによるとLサイズは89mm x 127mmとあったので ピクセル値変換で1226x1750でやってみたのですが プレビューの段階で左右がカットされてしまいました。 画像形式はJPGです。 よろしくお願いいたします。 ※既出であれば申し訳ありません。

  • PlgBltで画像の回転

    WINAPI:PlgBltにてビットマップ画像を回転させるソフトを作成中ですが、 画像サイズが大きくなると(5000x5000Pixel)、関数の戻り値自体は成功しているのですが、結果ビットマップ画像を見てみると真っ黒になってしまい、うまくいきません。 原因と対策方法を教えて下さい。 ちなみに、画像サイズが小さいと(100x100Pixel)うまくいきます。 尚、 OS:XP SP2 開発環境:Visial Stadio6.0 です。

専門家に質問してみよう