• Rejestracja
Pierwszy raz tutaj? Zajrzyj do FAQ!
x
Witamy w serwisie zapytaj.zhp.pl, gdzie możesz zadawać pytania i otrzymywać odpowiedzi od innych harcerzy.

Możesz też zdobywać punkty za zadawanie pytań i udzielanie odpowiedzi. Tutaj pomaganie innym się opłaca! Więcej informacji tutaj!


Na wiele pytań odpowiedź znajdziesz w dokumentach ZHP:


Szyfr ramowy jako tekst

+3 głosów

Czuwaj!

Mam dosyć nietypowe pytanko. Piszę dla swoich harcerzy prostą aplikację do szyfrowania długich wiadomości różnymi szyframi na zbiórki, biwaki itd.

Moje pytanie brzmi, czy macie może jakiś pomysł na zapisanie "ramek" z szyfru ramowego jako znaczki lub zestawy znaczków (z wykorzystaniem tablic ASCII), tak by nie sprawiały problemu w odczytaniu i interpretacji? (chciałbym uniknąć rozwiązania z graficzkami)

 

 

pytanie zadane 31 sierpnia 2015 przez użytkownika jacktorn (236)   1 2 13
Współczynnik akceptacji: 100%

zmienione kategorie 1 września 2015 przez użytkownika qj0n
   
A czy możesz w tej aplikacji zmieniać krój fontu? Bo jeśli tak to najprościej będzie stworzyć po prostu taki krój - nie jest to trudne.

 

Temat do zamknięcia.

Pozdrawiam;)

Dobrze rozumiem, że jest to osobna czcionka? Może zechciałbyś się nią później podzielić (i w sumie sam program też można rozpowszechnić)?

Nie ma najmniejszego problemu - jeśli ma to w jakimś stopniu posłużyć potomnym, to jak najbardziej podzielę się aplikacją po wcześniejszym upiększeniu. Skontaktuję się z Tobą na priv a Ty korzystając ze swoich uprawnień umieścisz ją tam gdzie trzeba.

 

Na początek udostępniam link do czcionki - nie ukrywam, że poszedłem po najmniejszej linii oporu. Pisząc duże litery, powinno zapisywać je "ramowo". Litery V,Q,X, wszystkie małe litery, cyfry, znaki interpunkcyjne w zależności od Windowsa albo zapisują się zwykłym Arialem (Win 7+) albo generują się czarne kwadraty (WinXP). Oczywiście jak będzie zapotrzebowanie to mogę zrobić to jak należy. Myślę też, że niegłupim pomysłem będzie zastosować to rozwiązanie dla Morse'a.

https://drive.google.com/file/d/0BxJq8l-ctlItN1F1WFVNaExYbFE/view?usp=sharing

Obecnie aplikacja wygląda tak: https://www.youtube.com/watch?v=nXt1ze-1Sdk&feature=youtu.be

 

Pozdrawiam,

Igor

Ok, zastanowię się gdzieś to wrzucić Może na centralny bank pomysłów?

Co do Morse'a to czcionki już istnieją ;)
W takim razie upiększę trochę moje dzieło i będę się odzywał:)

2 odpowiedzi

+3 głosów
 
Najlepsza

Niestety, z samym ASCII to łatwo nie będzie. Oczywiście można kombinować z |=*|, ale sam widzisz, że czytelne to nie jest i może okazać się, że łatwiej na piechotę niż Twoim programem (co mija się z celem). Dlatego wydaje mi się, że jak robić to użytecznie albo wcale.

Oto moje propozycje na implementację szyfru ramowego:

  1. Przygotować czcionkę z szyfrem ramowym i zmienić używaną czcionkę tekstu. Możesz do tego użyć profesjonalnych narzędzi (Inkscape, fontforge) albo darmowych narzędzi nawet przez stronę (np. tego)
  2. Użyć ASCII-arta, czyli każdy znak będzie się składał z wielu linii, najlepiej po zmniejszeniu czcionki. Na oko wydaje się, że dużo roboty, ale jakaś opcja to jest
  3. Wykorzystać rozszerzenia ASCII. Przykładowo może uda Ci się wstawić tam znaki z kodowania CP 437 (stare kodowanie DOSa) albo najlepiej UTF-8 (zawiera chyba wszystkie kształty świata i możliwość sklejania, np |͟͟͟͞·͞ ͟͞   ).
  4. Wyświetlić w tym okienku HTMLa - wtedy można użyć UTF-8 albo rysunków

Jak coś to pytaj jeszcze ;)

odpowiedź 31 sierpnia 2015 przez użytkownika qj0n (17,629)  
wybrane 31 sierpnia 2015 przez użytkownika jacktorn
Spróbuję w takim razie stworzyć własną czcionkę. Z tym że robię to pierwszy raz i zastanawia mnie jedna rzecz: nową czcionkę musiałbym dołączyć do programu ale czy jest jakaś prosta możliwość by zainstalowała się ona automatycznie na komputerze przyszłego użytkownika, który np. będzie chciał sobie zaszyfrowany tekst odpowiednio sformatować chociażby w Wordzie?

Możliwość oczywiście jest. Nie wiem, w czym tam piszesz aplikacje, ale tu masz przykładowy kod w C#. W C/C++ jest funkcja odpowiedniego API. Niestety, instaluje ona czcionkę tymczasowo (do restartu). Aby zainstalować na stałe trzeba ją dodać do rejestru (źródło).

Można też użyć metody 3 (UTF-8, ew. inne kodowanie). Wtedy tekst będzie w pełni kopiowalny.

+1 głos
Mi przychodzi do głowy takie rozwiązanie:

A = *_|
B = _*|
C, D, E, F podobnie
G = *=| ("=" jako kreska na górze i na dole, ale to chyba mało czytelne. Szukam jakiegoś lepszego znaku, ale nie widzę... :/)
H = =*|
I, J, K, L podobnie

M = *¯ | (kreskę u góry zrobiłam z tabeli unicode - znak u+00AF, w html podobno &#175, ale nie wiem, czy się nada. Z ASCII to ewentualnie zwykły myślnik, ale to będzie chyba słabo widoczne - *-|. Albo może tak - *``| - z dwoma apostrofami, co są na klawiaturze przy tyldzie)
N, O, P, R, S podobnie
T,U,W,Y - ostre nawiasy (<>), litera "v" i ^
Z - pewnie najlepsza będzie litera "o"
odpowiedź 31 sierpnia 2015 przez użytkownika Aleksandra Golecka (5,317)  

Podobne pytania

0 głosów
1 odpowiedź 449 wizyt
pytanie zadane 28 kwietnia 2016 w Pomysł na... przez użytkownika sb_siora (137)   2 6 11
0 głosów
1 odpowiedź 1,273 wizyt
pytanie zadane 11 maja 2018 przez użytkownika Kubus43710 (87)   1 3 5
+1 głos
1 odpowiedź 87 wizyt
+1 głos
2 odpowiedzi 267 wizyt
+4 głosów
3 odpowiedzi 4,633 wizyt
pytanie zadane 3 listopada 2013 przez użytkownika dh Karol (2,070)   14 26 56
Ta strona używa plików ciasteczek. Korzystanie z serwisu oznacza zgodę na ich używanie.
Pomysł, wykonanie, osoba odpowiedzialna za działanie serwisu: hm. Szymon Gackowski
...