{"action":"created","issue":{"url":"https://api.github.com/repos/olikraus/u8g2/issues/42","repository_url":"https://api.github.com/repos/olikraus/u8g2","labels_url":"https://api.github.com/repos/olikraus/u8g2/issues/42/labels{/name}","comments_url":"https://api.github.com/repos/olikraus/u8g2/issues/42/comments","events_url":"https://api.github.com/repos/olikraus/u8g2/issues/42/events","html_url":"https://github.com/olikraus/u8g2/issues/42","id":170206625,"number":42,"title":"kerning table (follow up #39)","user":{"login":"olikraus","id":1084992,"avatar_url":"https://avatars.githubusercontent.com/u/1084992?v=3","gravatar_id":"","url":"https://api.github.com/users/olikraus","html_url":"https://github.com/olikraus","followers_url":"https://api.github.com/users/olikraus/followers","following_url":"https://api.github.com/users/olikraus/following{/other_user}","gists_url":"https://api.github.com/users/olikraus/gists{/gist_id}","starred_url":"https://api.github.com/users/olikraus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olikraus/subscriptions","organizations_url":"https://api.github.com/users/olikraus/orgs","repos_url":"https://api.github.com/users/olikraus/repos","events_url":"https://api.github.com/users/olikraus/events{/privacy}","received_events_url":"https://api.github.com/users/olikraus/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/olikraus/u8g2/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/olikraus/u8g2/milestones/4","html_url":"https://github.com/olikraus/u8g2/milestones/2.2","labels_url":"https://api.github.com/repos/olikraus/u8g2/milestones/4/labels","id":1931838,"number":4,"title":"2.2","description":"","creator":{"login":"olikraus","id":1084992,"avatar_url":"https://avatars.githubusercontent.com/u/1084992?v=3","gravatar_id":"","url":"https://api.github.com/users/olikraus","html_url":"https://github.com/olikraus","followers_url":"https://api.github.com/users/olikraus/followers","following_url":"https://api.github.com/users/olikraus/following{/other_user}","gists_url":"https://api.github.com/users/olikraus/gists{/gist_id}","starred_url":"https://api.github.com/users/olikraus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olikraus/subscriptions","organizations_url":"https://api.github.com/users/olikraus/orgs","repos_url":"https://api.github.com/users/olikraus/repos","events_url":"https://api.github.com/users/olikraus/events{/privacy}","received_events_url":"https://api.github.com/users/olikraus/received_events","type":"User","site_admin":false},"open_issues":6,"closed_issues":1,"state":"open","created_at":"2016-08-09T10:29:04Z","updated_at":"2016-08-15T11:23:51Z","due_on":null,"closed_at":null},"comments":7,"created_at":"2016-08-09T16:06:11Z","updated_at":"2016-08-15T19:46:01Z","closed_at":null,"body":"This is a followup of the discussions happened in #39 \r\n\r\nSofar the idea is to introduce a kerning table with an additional command:\r\nu8g2.setKerningTable\r\n\r\nExisting kerning information can be found in .afm files.\r\nAFM file format spec is here: \r\nhttps://partners.adobe.com/public/developer/en/font/5004.AFM_Spec.pdf\r\nThe kerning table could be derived from the atm files:\r\nhttp://www.nsl.com/k/pdf/afm/\r\n\r\nAnother option is to calculate the kerning tables in bdfconv itself under certain conditions:\r\n * not monospaced, not 8x8 font\r\n * transparent font\r\n\r\nAlgorithm:\r\n  Combine each glyph with each other.\r\n  i = 0\r\n  Start Loop\r\n    Start with default distance\r\n    Draw glyphs into the same Bitmap \r\n    Check for overlapping pixel\r\n  While pixel do not overlap, i++, decrease distance, continue with loop\r\n  if i <= user-def'ed-threshold \r\n   continue with next glyph\r\n  kerning delta = i - user-def'ed-threshold \r\n  store pair in kerning table    \r\n  "},"comment":{"url":"https://api.github.com/repos/olikraus/u8g2/issues/comments/239907563","html_url":"https://github.com/olikraus/u8g2/issues/42#issuecomment-239907563","issue_url":"https://api.github.com/repos/olikraus/u8g2/issues/42","id":239907563,"user":{"login":"olikraus","id":1084992,"avatar_url":"https://avatars.githubusercontent.com/u/1084992?v=3","gravatar_id":"","url":"https://api.github.com/users/olikraus","html_url":"https://github.com/olikraus","followers_url":"https://api.github.com/users/olikraus/followers","following_url":"https://api.github.com/users/olikraus/following{/other_user}","gists_url":"https://api.github.com/users/olikraus/gists{/gist_id}","starred_url":"https://api.github.com/users/olikraus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/olikraus/subscriptions","organizations_url":"https://api.github.com/users/olikraus/orgs","repos_url":"https://api.github.com/users/olikraus/repos","events_url":"https://api.github.com/users/olikraus/events{/privacy}","received_events_url":"https://api.github.com/users/olikraus/received_events","type":"User","site_admin":false},"created_at":"2016-08-15T19:46:01Z","updated_at":"2016-08-15T19:46:01Z","body":"Currently the function is called:\r\nu8g2_uint_t u8g2_DrawExtendedUTF8(u8g2_t *u8g2, u8g2_uint_t x, u8g2_uint_t y, uint8_t to_left, u8g2_kerning_t *kerning, const char *str);\r\n\r\nall in all, i do not think this approach makes sense.\r\n\r\nnext step is to introduce a manual table..."}}
{"actor":{"display_login":"olikraus"}}