madebybowtie/FlagKit

Low Resolutions of Flag Images

Closed this issue · 2 comments

Is it possible to get flag images of higher resolutions from the framework?

I am using flag kit to get a flag image to fill up a 40 points x 40 points UIButton's imageview, however, the image looks blurred because the size of the original image returned from the framework is just 21points x 15points on a 2x resolution device(i.e.: iphone6)

Cheers,
KC

Yeah, the images or rather the assets are made for being small. They are tailored to work in small versions. So if one scale them up they will look a bit wonky since they lack that level of detail that one would expect in larger versions. But I see your point. We are providing SVG-versions for the web and might consider to provide PDF for iOS.

I've created a small Ruby script that converts the SVG files to PDF. It is far from perfect (makes a mistake with the BR flag for example), but better than nothing.

base_path = '~/Desktop/FlagKit/Assets/SVG'
Dir.glob("#{base_path}/*") do |file|
  original_name = File.basename(file, '.*')
  %x{rsvg-convert -w 270 #{base_path}/#{original_name}.svg -f pdf -o #{base_path}/#{original_name}.pdf}
end

I also tried to create a Sketch Plugin but didn't go far with it. Would someone be able to help me with that? (Exporting doesn't work, it only resizes the selected layer now.)

export default function(context) {
  var layer = context.selection.firstObject()
  if (layer) {
    var midX=layer.frame().midX();
    var midY=layer.frame().midY();

     layer.multiplyBy(12.85);

    layer.frame().midX = midX;
    layer.frame().midY = midY;

    var options = {
      output: '~/Desktop',
      overwriting: true,
      formats: 'pdf'
    }

    var exportObject = require('sketch/dom').exportObject;
    exportObject(layer, options);
  }
}