伙計們,
打開單個圖像,縮放到多種尺寸並將每個縮放尺寸保存到變量的最佳方法是什麼?
目前,我正在打開多個縮放和排列的圖像,以便將最終圖片複製並保存到 Powerpoint。 但是,根據導入的圖像類型,需要兩種不同的排列方式(附加腳本中的“coltwin_1”和“coltwin_2”)。 一種排列將具有不同的比例值。
例如,我嘗試縮放打開的圖像並保存為“col1”,該圖像將位於“coltwin_1. 第二個縮放變量是“coltwin_2”排列中使用的“col1x”。 但是,當使用 col1x = col1 << Scale(1.5) 時,col1 的比例會通過兩種佈局傳播。
解決此問題的最佳和最乾淨的方法是什麼?
非常感謝,
尼爾
col1 = Open(SD1 || samplename2 || "_a1_16col_filt.jpg", jpg);
col1 << Scale(.16);
col1x = col1 << Scale(1.5);
col2 = Open(SD1 || samplename2 || "_a2_16col_filt.jpg", jpg);
col2 << Scale(.16);
col2x = col2 << Scale(1.5);
coltwin_1 = Expr( // For surface orientation
V List Box(
H List Box(
sem1,
col1 ,
LT1 ,
),
sp1 = Spacer Box( size(0, 50)),
H List Box(
sem2,
col2,
LT2,
),
sp2 = Spacer Box( size(0, 50)),
H List Box(
sem3,
col3,
LT3
)
)
);
coltwin_2 = Expr( // For Xsec orientation
V List Box(
H List Box(sem1,
V Splitter Box(
col1x,
LT1x
),
),
sp1 = Spacer Box( size(0, 50)),
H List Box(sem2,
V Splitter Box(
col2x,
LT2x
),
),
sp2 = Spacer Box( size(0, 50)),
H List Box(sem3,
V Splitter Box(
col3x,
LT3x
),
)
)
);
傑出的!
完美運行。
非常感謝,
其中包括如何正確使用“新圖像”功能。 附加的代碼對我有用。
尼爾
col1 = Open(SD1 || samplename2 || "_a1_16col_filt.jpg", jpg);
col1 << Scale(.16);
col1x = New Image(col1);
col1x << Scale(2.2);
似乎您將不得不創建像 col1x = New Image(col1); 這樣的新圖像
Names Default To Here(1);
img = Open("$SAMPLE_IMAGES/tile.jpg", jpg);
Show(img << get size());
img << scale(0.5);
Show(img << get size());
img2 = img;
img2 << Scale(2);
Show(img << get size(), img2 << get size());
img3 = New Image(img);
img3 << scale(3);
Show(img << get size(), img3 << get size, img2 << get size());非常感謝您的意見。
我嘗試了您建議的初始方法,但仍然遇到次要比例因子仍然影響初始 col1 變量的情況。 我附上了一張圖表,顯示了評論最後一行之前/之後發生的事情。

絕對不確定這是否是最好的甚至是好的方法,但是...... 我認為使用 << Scale() 不會返回返回新圖像,只會更新舊圖像。 我認為最簡單的解決方案是創建 col1 到 colx 的副本,然後對其進行縮放
col1 = Open(SD1 || samplename2 || "_a1_16col_filt.jpg", jpg);
col1 << Scale(.16);
col1x = col1;
col1x << Scale(1.5);
這應該讓您首先將原始圖像縮放到 0.16,然後將原始圖像首先縮放到 0.16,然後再縮放到 1.5(您最好在 0.16 縮放之前創建副本,然後縮放到正確的值) .