Workarounds for better typography in Canva: discretionary hyphen and non-breaking „figure“ space

I got the task to fix some typography issues done in a document in Canva. I have never used Canva before, I am used to either regular text processors (LibreOffice Writer, MS Word) or LaTeX or Scribus or Adobe InDesign/Illustrator. Fixing badly justified text by applying proper hyphenation and forcing non-breaking spaces after single-letter prepositions (in Czech language) should do the job. However, it appears that Canva completely lacks both the feature to enable hyphenation, or to acknowledge non-breaking spaces – it just considers nbsps as regular spaces! Bad typography is guaranteed with such a setup. However, I managed to circument both limitations and found reasonable, but ugly and non-scalable workarounds how to make the documents already created in Canva look at least a bit more OK. For any serious typography, avoid Canva if possible.

Demo time: A) How Canva does typesetting by default (ugly!)

Missing hyphenation and justified text creates "rivers" of whitespace. Not great, very terrible.
Missing hyphenation and justified text creates „rivers“ of whitespace. Not great, very terrible.
Regular spaces instead of working non-breaking spaces put single-letter words such as these prepositions in Czech language to the end of lines which is against the typographic standard for Czech language.
Regular spaces instead of working non-breaking spaces put single-letter words such as these prepositions in Czech language to the end of lines which is against the typographic standard for Czech language. Even worse for Canva: pasting manually „non-breaking space“ is completely ignored by Canva, considering it breakable anyway!

B) How it should be done (and with some hacks, could be done)

Manually inserting "discretionary hyphens" allows Canva to do the hyphenation where manually entered. Furthermore, since it is a "discretionary" (soft) hyphen, it converts into whitespace and is invisible when accidentally the word is moved elsewhere but the end of the line.
Manually inserting „discretionary hyphens“ allows Canva to do the hyphenation where manually entered. Furthermore, since it is a „discretionary“ (soft) hyphen, it converts into whitespace and is invisible when accidentally the word is moved elsewhere but the end of the line.
While the official "non-breaking space" character (char 160, Unicode U+00A0) is ignored by Canva and treated as regular breaking space char (shame on you, Canva), one of the alternative nbsps fortunately works OK - "figure non-breaking space" (Unicode U+2007).
While the official „non-breaking space“ character (char 160, Unicode U+00A0) is ignored by Canva and treated as regular breaking space char (shame on you, Canva), one of the alternative nbsps fortunately works OK – „figure non-breaking space“ (Unicode U+2007).

How to actually do it in Canva

  1. Hyphenation: In a very very final version of the document where you don’t plan any changes to text, fonts, sizes and widths of text columns, browse through the justified text from top to bottom, look at the ugly „rivers“ of whitespace and manually fix it for each instance by pasting the „discretionary hyphen“ (soft hyphen) character (Unicode: U+00AD) into middle of the words you want to be hyphenated. You can use Unicode Explorer website (https://unicode.flopp.net/c/00AD) to copy the proper character into clipboard, or a magic Compose-key sequence [compose][-][-][space].
  2. Non-breaking spaces: Look at words or numbers at the end of the line you want to be on the next line with the following word. Manually delete the regular space and replace it with a non-standard type of non-breaking „figure space“ (Unicode: U+2007): https://unicode.flopp.net/c/2007
  3. Profit!

Next time, use better tool than Canva for serious typography. Canva is great for a very rapid creation of some leaflets or infographics but avoid it if possible for anything with more text, especially if you plan to use edge-to-edge (justified) text layout.

Autor

Martin

Pracuji jako ajťák a grafik na volné noze, zejména ale pro brněnskou firmu vyrábějící ekodrogerii. Dále působím v brněnském systému místní směny Rozleťse, Českém zahrádkářském svazu, České psychedelické společnosti, spolku Archetypal a Mezinárodní komunitě dzogčhenu. Chcete mě podpořit? BTC: 37mf2FJR26Ce3DxMkocukJDgB1eVjasnZB, příp. PGP podepsané adresy dalších kryptoměn.

5 komentářů u „Workarounds for better typography in Canva: discretionary hyphen and non-breaking „figure“ space“

  1. Díky, už jsem tu podruhé a moc mi to pomohlo! Jediný co, tak se ta non-breaking mezera docela široká. Ale i tak paráda!

  2. Díky za hack, fakt pomohol. A súhlasím – Canva je super na rýchle veci, ale práca s typografiou je žalostná.

  3. Díky za záchranu! Snažili jsme se to odhodit několika mezerníky (fuj!), v canvě to vypadalo OK, ale jakmile jsme to vyexportovali do PDF, všechny ty mezery přeskočily na další řádek a celý ho odsadily :-/ Tohle je pro nás konečně řešení! Ale souhlasím že typografie je tristní. Nicméně pořád lepší, než se snažit cpát grafiku do wordu ‚:-D.

  4. Díky moc za hack s non-breaking space, tohle jsem hledal hodně dlouho! Přivedlo mě to na hledání lepšího podobného – bohužel uvedená figure space je mnohem širší než normální mezera, takže je to vidět. Ale pokud použiju 2× za sebou NARROW NO-BREAK SPACE (U+202F), tak se text nejenže nezalomí, ale šířkou to působí jako normální mezera.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *