2017-08-10 50 views
6

我認爲Xcode 9資產目錄中的新保留矢量數據複選標記最終會使我們調整矢量PDF圖像的大小,但顯然不是。這是我在預覽兩個縮放看到測試圖像:Xcode 9資產目錄保留矢量數據不起作用?

enter image description here

enter image description here

尼斯和尖銳,有很多變焦的,所以顯然這是一個矢量圖像。但這裏是兩個影像的觀點看起來像我的應用程序:

enter image description here

那麼,是我的矢量數據?這是非常需要的功能仍然失蹤的行動?它僅適用於自動生成的2倍和3倍圖像嗎?如果是這樣,保留矢量數據複選框給我們什麼,我們沒有?

回答

3

它的工作原理,但只有當你執行調整自己:

enter image description here

那是在代碼實現的,就像這樣:

let im = UIImage(named:"Image")! 
    let r = UIGraphicsImageRenderer(size:self.iv2.bounds.size) 
    let im2 = r.image { 
     _ in 
     im.draw(in: self.iv2.bounds) 
    } 
    self.iv2.image = im2 
    self.iv2.contentMode = .center 

這樣的UIImageView將它擴展光柵化(例如,對於Aspect Fit),但在代碼中繪製將保留矢量數據。

編輯 Xcode 9 beta 5中的新功能現在可以按預期工作!在這個屏幕截圖中,第二個圖像視圖只是進行縮放填充,沒有更多。我們大幅調整!

enter image description here

+0

你使用兩個普通的UIImageView沒有代碼?我似乎無法使用Xcode 9b6進行光柵化渲染的兩個圖像... –

+0

@GuillaumeAlgis是的!這些只是兩個普通的圖像視圖,不需要代碼。你記得檢查保存矢量數據嗎? – matt

+0

是我檢查過的:(使用你提供的片段時,我得到一個清晰的圖像,但有兩個普通的圖像視圖,大的圖像視圖,也許我應該提交一個雷達,附帶示例項目:/ –

3

編輯:仍然在Xcode 9 GM(9A235)

直至今日(Xcode的9測試版6 9M214v)相同的錯誤行爲,圖像將僅呈現正確的(非模糊)如果UIImageView至少有3個間距相關的約束。

例如。間距向左,間距向右,間距向上,另一個約束來定義UIImageView高度。

enter image description here

還要注意的是完全禁用自動佈局將所有的UIImageView渲染不正確。

我爲此錯誤填充了rdar:// 34279759(http://www.openradar.me/radar?id=5005434293321728)。

+0

輝煌,謝謝。您! – matt