小编Mar*_*n M的帖子

C#裁剪并调整大图像的大小

我得到了一些非常大的建筑图纸,有时是22466x3999,深度为24,甚至更大.我需要能够将这些版本调整为较小的版本,并能够将图像的各个部分剪切成较小的图像.

我一直在使用以下代码来调整图像大小,我在这里找到:

       public static void ResizeImage(string OriginalFile, string NewFile, int NewWidth, int MaxHeight, bool OnlyResizeIfWider)
        {
            System.Drawing.Image FullsizeImage = System.Drawing.Image.FromFile(OriginalFile);
            if (OnlyResizeIfWider)
            {
                if (FullsizeImage.Width <= NewWidth)
                {
                    NewWidth = FullsizeImage.Width;
                }
            }
            int NewHeight = FullsizeImage.Height * NewWidth / FullsizeImage.Width;
            if (NewHeight > MaxHeight)
            {
                NewWidth = FullsizeImage.Width * MaxHeight / FullsizeImage.Height;
                NewHeight = MaxHeight;
            }
            System.Drawing.Image NewImage = FullsizeImage.GetThumbnailImage(NewWidth, NewHeight, null, IntPtr.Zero);
            FullsizeImage.Dispose();
            NewImage.Save(NewFile);
        }
Run Code Online (Sandbox Code Playgroud)

这个代码裁剪图像:

public static MemoryStream CropToStream(string path, int x, int y, int …
Run Code Online (Sandbox Code Playgroud)

c# image-resizing asp.net-mvc-5

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

FontAwesome Pro和xamarin.ios只能激活一种字体

所以我一直在寻找答案.

我无法使用FontAwesome Pro中的所有3种字体来使用我的xamarin native(iOS)来工作.

我确实用过

UIFont.FromName(fontName, size);
Run Code Online (Sandbox Code Playgroud)

但是"fontName"需要是Font的"family"名称,这是FontAwesome的一个问题,因为专业版中的所有版本都具有相同的PostScript名称.它不是文件名,它是字体的家族属性.因此,当我使用(在Mac上)Fontbook时,我可以看到fontawesome pro的所有三个版本(Regular,Light和Solid)都有相同的姓氏,即"Font Awesome 5 Pro".

所以这意味着我只能使用应用程序中的三种字体之一.

我一直在寻找一种改变格式的解决方案,但我似乎无法找到任何方法.但是,如果我可以设置我想要字体的格式,那么我想将'Light','Regular'或'Solid'定义为字体格式......

下面是Fontbook的截图(抱歉,这是丹麦语)

在此输入图像描述

fonts xamarin.ios ios xamarin

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

zip文件中的文件编码(C#/ ionic-zip)

我们在zip文件中编码文件时出现问题.我们使用离子拉链来压缩和解压缩档案.我们位于丹麦,所以我们经常在文件名中包含æ,ø或å的文件.

当用户使用Windows内置工具压缩文件时,我发现它正在使用IBM437 enconding,当我们在其中包含'ø'/'Ø'的文件时,这只是给出了一些时髦的结果.我修复了以下代码:

public static string IBM437Encode(this string text)
{
    return text.Replace('ø', '¢').Replace('Ø', '¥');
}
public static string IBM437Decode(this string text)
{
    return text.Replace('¢', 'ø').Replace('¥', 'Ø');
}
Run Code Online (Sandbox Code Playgroud)

这已经运行了一段时间了,一切都很好.

但是,因为它总是一个但是,我们没有尝试用mac osx中的默认工具压缩的文件.所以现在我们遇到了一个新问题..当使用æ,ø和å时,编码是UTF-8! 所以如果我知道压缩拉链的位置,我可以让它工作,但是有没有简单的方法来检测或规范化拉链内的编码?

c# zip encoding ionic-zip

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