App maken: ook jij kunt het leren!

 

de iOS Academie Forums

Forums - iOS Academie - Links en tips van leden: Tip: AutoResizen van app icons

Michel  Op de eerste vier stappen van zijn/haar studiekaart scoort Michel 17%. Klokje01 okt 2015, 10:11
Avatar
Avatar
Berichten:29
Fans:1


 

Ook altijd zo aan het hannessen met de juiste icoontje voor je app? Kijk dan even op http://makeappicon.com

(nee niet mijn product ;-) )

Daar kun je 1 afbeelding van 1024x1024 uploaden, en je krijgt een mailtje met alle bestandsformaten die je nodig hebt!

 

 

 

Reageer

Goed advies! 2 personen vinden dit goed advies.
Leuk! 1 persoon vindt vindt dit leuk.

Klaas  Op de eerste vier stappen van zijn/haar studiekaart scoort Klaas kremer 66%. Klokje01 okt 2015, 21:09
Avatar
Avatar
Berichten:23


En als je je email niet wil doorgeven aan derden is prepo een aanrader....

 https://itunes.apple.com/nl/app/prepo/id476533227?mt=12 gratis 

 

 

 

 

Reageer

Goed advies! 1 persoon vindt dit goed advies.
1 knuffel voor Klaas! 1 persoon heeft Klaas een knuffel gegeven.

Michiel  Michiel heeft nog geen Studiekaart. Klokje29 feb 2016, 15:19
Avatar
Avatar
Berichten:211
Fans:2


Ik gebruik daar dit python programmaatje voor: (als idee heb ik nog dat-ie een directory voor de files en een Contents.json moet aanmaken, zodat je in Xcode niet tig keer hoeft te slepen)

# -*- coding: utf-8 -*-

# Software by Michiel Overtoom, motoom@xs4all.nl

# TODO: Also create subdirectory 'AppIconXyz.appiconset' with all images + accompagnying catalog 'Contents.json'

import glob
from PIL import Image # pip install pillow
import sys
import os

resolutions = (
    # iPhone icons
    (180, "60@3x"),
    (120, "60@2x"),
    (120, "40@3x"),
    (80, "40@2x"),
    (87, "29@3x"),
    (58, "29@2x"),
    (57, "57@1x"),
    (114, "57@2x"),
    # additional iPad icons
    (167, "83.5@2x"),
    (152, "76@2x"),
    (76, "76@1x"),
    (72, "72@1x"),
    (144, "72@2x"),
    (50, "50@1x"),
    (100, "50@2x"),
    (40, "40@1x"),
    (29, "29@1x"),
    )
        
def createappicons(fn):
    for resolution, suffix in resolutions:
        im = Image.open(fn)
        im.thumbnail((resolution, resolution), Image.ANTIALIAS)
        basename, extension = os.path.splitext(fn)
        ofn = "%s-%s%s" % (basename, suffix, extension)
        im.save(ofn, "png")
        
if len(sys.argv) < 2:
    print "Usage: %s Make copies of image in a diversity of sizes for iPhone and iPad icon sets." % sys.args[0]
else:
    createappicons(sys.argv[1])

 

Reageer

Leuk! 1 persoon vindt vindt dit leuk.

PageMaker  Op de eerste vier stappen van zijn/haar studiekaart scoort Jan H. 45%. Klokje22 feb 2017, 12:34
Avatar
Avatar
Berichten:29


Michiel,

Na een jaar nog een respons op je bericht, wonderlijk.

1. Eerst over plaatjes.

In xcaccess staan de plaatjes in de volgende formats: <Naam>.png, <Naam>@2x.png en <Naam>@3x.png; het kleinste plaatje is dan 140 x 140 pixels. Ja, pixels en geen punten.

Mijn vraag: Waarom gebruik je zoveel verschillende resoluties? Dat lijkt me niet nodig.

2. Nu over JSON

Ben je al zover gevorderd dat je server benadering middels JSON werkt?

Welke server gebruik je?

Graag je reactie.

Reageer


Michiel  Michiel heeft nog geen Studiekaart. Klokje22 feb 2017, 14:08
Avatar
Avatar
Berichten:211
Fans:2


Waarom gebruik je zoveel verschillende resoluties? Dat lijkt me niet nodig.

Mij ook niet, mij lijkt het dat Xcode en/of iOS genoeg zouden hebben aan één plaatje van bv. 512x512 pixels en zelf de downscaling kan doen, maar Apple beschikt anders en verlangt dat de developer zelf alle gedownsizede formaten aanlevert. De rationale is dat lagere resolutie plaatjes andere content moeten kunnen hebben (bijvoorbeeld om wegvallende details te kunnen voorkomen) maar volgens mij is bij 99% van alle apps het icon hetzelfde in alle resoluties.

 

Ben je al zover gevorderd dat je server benadering middels JSON werkt? Welke server gebruik je?

Ja. Welke software er op de server draait maakt niet zoveel uit, als het maar een JSON pakket produceert (vaak behelst dat maar één statement). Voor mijn werk maak ik gebruikt van een gecoloceerde machine waarop een Python applikatie draait, voor een ander project heb ik een webruimte bij TransIP gehuurd, een SSL certificaat erop geinstalleerd, en verzorgt een PHP programma het ophalen van gegevens uit een MySQL database en het inpakken in JSON.

Dat komt ongeveer neer op het volgende:

 

require_once("config.php");
$db = new mysqli($dbserver, $dbuser, $dbpwd, $dbname);
if ($db->connect_errno){
    die("Database connectie error: ".$db->connect_error);
    }
    
if (empty($_GET["zoek"])) {
    $rs = $db->query("select id, naam, plaats from klanten order by naam");
    }
else {
    $zoek = $_GET["zoek"];
    $rs = $db->query("select id, naam, plaats from klanten where naam like '%$zoek%' order by naam");
    }

if ($db->errno){
    die("Query error: ".$db->error);
    }

$data = array();
while ($row = $rs->fetch_assoc()) {
    $data[] = $row;  
    }

if ($db->errno){
    die("Recordset error: ".$db->error);
    }

header("Content-Type: application/json");
echo(json_encode($data));

Merk op dat bovenstaand geen productiecode is! Zo is het gevoelig voor SQL injectie, en is de foutafhandeling inadequaat.


Reageer


DaLi  Op de eerste vier stappen van zijn/haar studiekaart scoort Daan 69%. Klokje22 feb 2017, 18:48
Avatar
Avatar
Berichten:87
Fans:1


 

Ook altijd zo aan het hannessen met de juiste icoontje voor je app? Kijk dan even op http://makeappicon.com

(nee niet mijn product ;-) )< ...

MakeAppIcon is prima. Is dat altijd gratis of heeft aankoop meerwaarde? Via website 9.99USD en via App Store 20 EUR is wel vreemd. 

Reageer