Düzeltemediğim bir sorunum var. UIScrollView (ekran dışı içerik dahil) bir ekran görüntüsü almaya çalışıyorum ama görünüm uzun olduğunda renderInContext kaydırma görünümünün tüm içeriğini almıyor. Üretilen görüntü boyutları doğrudur, ancak işlenen veriler, bu parçaların olması gereken beyaz boşluk bırakan ekranın parçalarını eksik görünüyor. Eksik bloklar, "scaleToFit" olarak ayarlandığına inandığım bir UIWebView'daki içeriğindendir. Her zaman olmaz, sadece UIWebView'ın yüksekliği oldukça büyük olduğunda ortaya çıkar. Beni düşünen şey, UIWebView'ın ölçeklendirilmesi ile ilgili.Bir iOS cihazında ekran görüntüsü alırken verilerin eksik "bloklarını" nasıl düzeltirsiniz?
Eğer coreLayer.bounds CGRECT değerini aşağıda değiştirirseniz, farklı sonuçlar elde ederim, bazen eksik bloklar altta ve bazen de resmin ortasındadır.
Bu question kabul cevap gelen kodla başladı ve kesme sorunu fark ettiğinde, aşağıdaki bunu modifiye:
kesme ayarı (bazı manzarası ile düzelttim yardım ettiUIGraphicsBeginImageContext(scrollView.contentSize);
{
CGPoint savedContentOffset = scrollView.contentOffset;
CGRect savedFrame = scrollView.frame;
//hide the scroll bars
[scrollView setShowsHorizontalScrollIndicator:NO];
[scrollView setShowsVerticalScrollIndicator:NO];
scrollView.contentOffset = CGPointZero;
scrollView.frame = CGRectMake(0, 0, scrollView.contentSize.width, scrollView.contentSize.height);
//adjust layer for cut-off
CALayer *coreLayer = scrollView.layer;
coreLayer.bounds = CGRectMake(0, 0, scrollView.contentSize.width, scrollView.contentSize.height);
[coreLayer renderInContext: UIGraphicsGetCurrentContext()];
//[scrollView.layer renderInContext: UIGraphicsGetCurrentContext()];
image = UIGraphicsGetImageFromCurrentImageContext();
scrollView.contentOffset = savedContentOffset;
scrollView.frame = savedFrame;
//reset the scroll bars to default
[scrollView setShowsHorizontalScrollIndicator:YES];
[scrollView setShowsVerticalScrollIndicator:YES];
}
UIGraphicsEndImageContext();
) Ancak UIScrollView oldukça uzun olduğu zaman hala kesiliyor. Bir süredir bunun üzerinde çalışıyorum ve bir düzeltme bulamıyorum. Önerin var mı? Bu sorunu hiç karşılaştıran oldu mu?
Lütfen yardım edin!
Sadece bir düşünce, scrollView.frame.size'yi scrollView.contentSize olarak geçici olarak değiştirmeyi düşündünüz mü? Bu, tablo görüntüsünün çerçeveye sığdığı sürece tüm hücreleri yüklemesini gerektirir (tablo, önbellek içeriğini çerçevenin dışındaki, ekranın dışında değil). – Kalle