그림크기조정 (원본 크기 대비 비율)

새로운 그림 파일을 불러와서 그림 크기를 원본의 크기 대비 30%로 삽입하려 합니다.

function OnScriptMacro_script40()
{
InsertPicture(“c:\noname01.emf”, 1, 1, 0, 0, 0, 35, 35);
FindCtrl();
hc = CurSelectedCtrl; // 현재 선택된 개체 확인
if (hc.CtrlID == “gso”)
{
set = hc.Properties;
subset = set.Item(“ShapeDrawImageAttr”);
NewWidth = subset.Item(“OriginalSizeX”) * 0.3;
NewHeight = subset.Item(“OriginalSizeY”) * 0.3;
set.SetItem(“Width”, NewWidth);
set.SetItem(“Height”, NewHeight);
hc.Properties = set;
}
}
이렇게 구성해 보았으나. 원본대비 30%가 아닌 다른 일정한 비율로 변하는 것 같습니다.

InsertPicture(“c:\noname01.emf”, 1, 1, 0, 0, 0, 35, 35);
로 불러오면 원본대비 25.31% 25.34%로 들어오네요

InsertPicture(“c:\noname01.emf”, 1, 1, 0, 0, 0, 20, 20);
으로 불러와도 동일한 결과 입니다.

===========================================
동일한 그림을 emf, jpg, png로 저장하여 비율을 확인해 보니
emf - 25.3
jpg - 22.5
png - 93.8
로 들어가네요

그림을 삽입한 후에 크기 조절하시면 될 것 같습니다.

function OnScriptMacro_script2()
{
	InsertPicture("C:\\Users\\kosohn\\Desktop\\사진자료2\\그림1.png", true, 0, false, false, 0, null, null)
	FindCtrl();

	var pic = CurSelectedCtrl;
	var picSet = pic.Properties;

	picSet.SetItem("Width", picSet.Item("Width") * 0.3);
	picSet.SetItem("Height", picSet.Item("Height") * 0.3);

	pic.Properties = picSet;
}

그림 크기

1개의 좋아요

아 그림 크기를 정하지 않고 null 로 하면 100%로 들어가는 가 보군요 감사합니다. 확인해 보겠습니다.

알려주신 방법을 적용해 보았지만 결과는 동일하군요 ㅠㅠ

function OnScriptMacro_EMF그림불러오기()
{
InsertPicture(“c:\noname01.emf”, 1, 1, 0, 0, 0, null, null);
FindCtrl();
cc = CurSelectedCtrl;
set = cc.Properties;
NewWidth = set.Item(“Width”) * 0.3;
NewHeight = set.Item(“Height”) * 0.3;
set.SetItem(“Width”, NewWidth);
set.SetItem(“Height”, NewHeight);
cc.Properties = set;
}

EMF 파일의 경우 저 비율로 들어가게 됩니다.

참고로 각 포맷별 비율은 다음과 같이 나오네요

다만, 원본의 크기가 같으면 들어가는 그림의 크기는 모두 같아지는 것 같습니다.
(비율표시는 다르지만, 포맷에 상관없이)

제 경우는 모든 이미지에 대해서 대략 30%로 나옵니다.

사용하신 사진을 보내주시면 한 번 해 볼게요.

kosohn@naver.com

그림 크기

1개의 좋아요

원인을 찾았네요

원본크기로 삽입했음에도 불구하고, 저런 비율로 표시되네요
PNG의 경우 312%, jpg의 경우 75%로 표시 됩니다.

저도 동일하게 확인 되었습니다. (처음 보는 현상인데 원인은 잘 모르겠네요.)

방법은 100%로(원래 크기로) 변경한 후 30%를 적용해야 할 것으로 보입니다만,

원래 크기를 알 수 있는 방법을 모르겠습니다.

관심 가져주셔서 감사합니다. 그래도 일정 비율로 들어가는 것 같아서, 일단 곱해지는 숫자를 수정해서 제가 원하는 크기로 넣을 수 있을 듯 합니다.

보내주신 그림과 제가 갖고 있는 그림을 비교해보니 차이가 있어서 말씀드립니다.
참고: 1픽셀 = 0.75포인트

우선 그림을 삽입하여 100%로( “원래 그림으로”) 한 후

그림 크기와 개체 설명문의 그림 정보를 비교해 보면
"개체 설명문"에서 원본 가로의 크기가 642픽셀이면
0.75를 곱한 값이 개체 속성의 크기에 나와야 하는데

보내주신 그림 파일(파일 중에서 jpg파일)을 보면
"개체 설명문"의 원본 가로의 크기(893 픽셀)와
개체 속성의 크기에 나오는 값(892.8 포인트)이 같은 값으로 나옵니다.

파일 정보가 잘못 되어서 그런 게 아닌가 싶습니다.

1개의 좋아요

일러스트레이터에서 그림을 저장할 때, 저장하는 옵션에 따라 이런 저런 설정값이 달라져서 그런 것이 아닐까 하는 추측입니다. ^^ 감사합니다.