Sketch 360 vine la Microsoft Surface Duo

Pictograma timp de citire 3 min. citit


Cititorii ajută la sprijinirea MSpoweruser. Este posibil să primim un comision dacă cumpărați prin link-urile noastre. Pictograma Tooltip

Citiți pagina noastră de dezvăluire pentru a afla cum puteți ajuta MSPoweruser să susțină echipa editorială Află mai multe

În 2018, Michael Scherotter, un manager principal de programe Microsoft, a lansat Sketch 360 în Microsoft Store.

Aplicația vă permite schițe panoramice 360 ​​cu ușurință pe tableta Windows.

Astăzi, Scherotter a publicat o postare pe blog despre procesul său de a aduce aceeași aplicație pe Android și de a o îmbunătăți în mod special pentru Surface Duo.

Sketch 360 pe un Surface Duo

El observă că Surface Duo a acceptat în mod unic Surface Pen sensibil la presiune și a avut, de asemenea, o interfață cu ecran dublu care se potrivea foarte bine cu interfața de utilizare cu două panouri a Sketch 360 pe Windows.

Prin urmare, el a decis să reconstruiască Sketch 360 folosind Xamarin.Forms, astfel încât să poată viza Surface Duo, alte dispozitive Android native ca Samsung Galaxy Note și orice alte dispozitive Android moderne, precum și dispozitive Apple iOS cu o singură aplicație.

Arhitectura aplicației constă din două fețe, o pânză de desen și o vedere 360. De fiecare dată când utilizatorul adaugă un accident vascular cerebral, vizualizarea 360 este actualizată și deplasează până la punctul de sfârșit al conturului tocmai adăugat. Pânza de desen pe Windows a folosit controlul nativ InkCanvas, ceea ce a făcut ușoară colectarea și redarea cernelii. În trecerea la Xamarin Forms, trebuia să rescrie cea mai mare parte a codului C# și Xaml și trebuia să găsească ceva care să ofere intrare de cerneală, deoarece nu exista un analog cu InkCanvas pentru Xamarin Forms. El a creat un InkCanvasView folosind SkiaSharp, care a gestionat introducerea și randarea cu cerneală, instrumentat pentru a oferi o suprafață API similară cu UWP InkCanvas și implementând suficient pentru a sprijini scenariile de bază Sketch 360:

  • Desenarea și ștergerea liniilor de cerneală
  • Trase de cerneală sensibile la presiune cu mai multe culori și grosime variabilă
  • O pânză virtuală care acceptă deplasarea și zoomul
  • Actualizare cursă umedă pentru a activa ghidajele curbate în timpul desenului
  • Încărcarea și salvarea datelor de cerneală vectorială

În Xamarin Forms, a serializat cerneala într-un format JSON simplu și a modificat versiunea Windows pentru a putea citi acel format în plus față de cerneala Windows. Aceasta înseamnă că puteți începe o schiță pe telefon, puteți salva fișierul .sketch360 pe OneDrive și îl puteți deschide din nou pe un dispozitiv Surface mai mare pentru a-l finaliza.

Michael a găsit noile forme Xamarin TwoPaneView API pentru dispozitivele cu ecran dublu, a facilitat definirea unei interfețe de utilizare care se adaptează fluid de la un singur panou la două, portret sau peisaj.

Peisaj

Portret

Întins pe orizontală

 Întins pe verticală

Formularele Xamarin au făcut procesul de creare a unei aplicații creative mobile multiplatformă simplu și, cu instrumentele suplimentare din Xamarin Essentials, a reușit să o facă la fel de funcțională și performantă ca o aplicație nativă. De asemenea, a putut să facă cea mai mare parte a dezvoltării folosind Emulator Surface Duo fără a avea în mână un dispozitiv fizic.

Vizualizarea 360 este un control WebView care utilizează Babilon.JS, un cadru JavaScript 3D open-source care are un PhotoDome API. El a putut folosi codul HTML/JavaScript folosind Babylon.JS cu foarte puține modificări față de versiunea Windows.

Aplicația finalizată este acum disponibilă pe Google Play și funcționează cu orice dispozitiv Android modern, dar funcționează cel mai bine cu dispozitive care acceptă stilouri sensibile la presiune, cum ar fi Surface Duo și Samsung Galaxy Note.

Verificați aplicația aiciși citiți despre procesul complet de dezvoltare la Microsoft DevBlog.

[appbox googleplay com.microsoft.garage.sketch360app]

Mai multe despre subiecte: aplicaţia, Suprafață duo