小编Sca*_*lin的帖子

CGPDFDocument无法读取pdf

我按照以下示例在我的应用程序(Xamarin.iOS)中查看pdf.一切正常,直到最近我才开始注意到使用这种方法无法读取一些pdf文件.

我打开并获取了我的mac信息,我注意到以下内容:

  • 如果我使用Mac查看器将文档导出为pdf,它可以很好地读取,但尺寸会增加.
  • 如果我尝试按原样打开文件,则无法查看任何内容,只能查看白页.
  • 这仅适用于我的iOS应用,我的Android上的查看器工作得很好.

我可以使用Mac的查看器将每个文件导出为pdf,但这比我需要的更多.我该怎么做才能解决这个问题?

原始编码:Adobe Acrobat 10.1.16中的PDFScanLib v1.2.2

导出编码:Mac OS X 10.10.5 Quartz PDFContext


我对该程序运行了额外的测试,我可以得出结论问题是在pdf文件上使用了压缩.CGPDFDocument有没有办法删除或忽略压缩,所以我可以查看pdf?我将pdf上传到我分割页面的移动后端.我正在使用Pdfsharp来实现这一目标,如果可能的话有没有办法在保存到服务器之前清理文件?(此问题仅影响我的应用程序的iOS版本).


经过额外的测试后,我遇到了以下错误:这里 看起来使用的JBIG2压缩有一个已知的错误,当在pdf中读取jpg时会导致错误.(我将继续进一步测试,直到找到解决方案.)


更正:pdf压缩不是JBIG2,而是FlateDecode.在测试并读取二进制数据之后,我注意到原始数据和导出数据都具有相同类型的压缩.(当我尝试解决这个问题时,会更新更多信息.)

c# xamarin.ios pdfrenderer ios cgpdf

11
推荐指数
1
解决办法
460
查看次数

Xamarin UISwipeGestureRecognizer渲染器

在Xamarin.Forms中,我希望能够向左和向右滑动以导航图片列表.目前我只想在每次检测到滑动时触发事件.

要在渲染器中使用的子类:

public class LRMasterDetailPage : ContentView
{
}
Run Code Online (Sandbox Code Playgroud)

我有一个使用LRM类的ContentPage,如下所示:

    public class ImagePage : ContentPage 
    {

    public ImagePage(Photo photo)
        {
            _image = new WebImage
                {
                    Url = photo.Url,
                    Placeholder = "placeHolder2.png"
                };

            var imageView = new LRMasterDetailPage {
                Content = _image
            };

            this.Content = imageView;
           }
      }
Run Code Online (Sandbox Code Playgroud)

这是我的渲染器:

    [assembly:ExportRenderer (typeof(LRMasterDetailPage), typeof(LRMDPRenderer))]
namespace Project.iOS
{
    public class LRMDPRenderer : ViewRenderer<LRMasterDetailPage,UIView>
    {
        UISwipeGestureRecognizer swipe;

        protected override void OnElementChanged (ElementChangedEventArgs<LRMasterDetailPage> e)
        {
            base.OnElementChanged (e);
            // Do someting else, init for example
            swipe = …
Run Code Online (Sandbox Code Playgroud)

c# xamarin.ios uigesturerecognizer xamarin.forms

3
推荐指数
1
解决办法
3398
查看次数

天气API http://www.weather.gov/

我通过访问他们的XML文件从国家气象服务获取天气信息.但截至今天,我一直收到拒绝访问错误(403)我的服务器是否已阻止?如果是这样我可以使用哪些方法在美国免费获取天气信息?

我无法相信我的网络服务仅仅受到了几次点击.以防这是我用来测试天气数据的计划工作:

 public override async Task ExecuteAsync()
    {
        GoogleGeocoder geocoder;
        //Geocode variables
        string apiKey = WebConfigurationManager.AppSettings["googleApiKey"];

        if (String.IsNullOrEmpty(apiKey))
        {
            geocoder = new GoogleGeocoder();
        }
        else
        {
            geocoder = new GoogleGeocoder(apiKey);
        }



        string longitude = string.Empty;

        string latitude = string.Empty;

        var xdoc = new XDocument();

        var project = Project();

        //Query for each project and get their longitude and latitude

        DataTable dataTable = SqlHelper.ExecuteDataset("getAll", "1").Tables[0];

        if (dataTable.Rows.Count > 0) {
            foreach (DataRow dataRow in dataTable.Rows) {
                Map.DataToObject(dataRow, project);

                //Find Longitude and latitude …
Run Code Online (Sandbox Code Playgroud)

.net c# mobile azure

1
推荐指数
1
解决办法
1609
查看次数